Dato il seguente DockerfileDocker Copia e Modifica proprietario
FROM ubuntu
RUN groupadd mygroup
RUN useradd -ms /bin/bash -G mygroup john
MKDIR /data
COPY test/ /data/test data
RUN chown -R john:mygroup /data
CMD /bin/bash
nella mia directory di prova, che viene copiato ho impostato i permessi dei file a 770.
Se faccio un su john
dentro il mio container, ho non può accedere a nessuno dei file o sottodirectory nella mia directory di test. Sembra che questo problema sia correlato alla proprietà nel filesystem aufs, dove la directory copiata è ancora di proprietà di root e le autorizzazioni sono impostate su 770.
Esiste una soluzione per questo problema per impostare correttamente le autorizzazioni? Uno potrebbe essere quello di impostare i permessi della directory originale sull'uid dell'utente del contenitore prima di copiarlo. Ma questo sembra più un hack.
prima di 'COPY' e' MKDIR' Penso che dovresti avere un 'USER john' – user2915097
Forse questo potrebbe funzionare, ma dovrei creare la struttura di directory completa che viene copiata e quindi questo non è accettabile. –