Risposte:
Per le versioni v17.09.0-ce e successive
Utilizzare il flag opzionale --chown=<user>:<group>
con i comandi ADD
o COPY
.
Per esempio
COPY --chown=<user>:<group> <hostPath> <containerPath>
La documentazione per il flag --chown è ora disponibile nella pagina di riferimento del file Docker principale .
Il numero 34263 è stato unito ed è disponibile nella versione v17.09.0-ce .
Per versioni precedenti alla v17.09.0-ce
Docker non supporta COPY
come utente diverso da root. È necessario chown
/ chmod
il file dopo il COPY
comando.
File Docker di esempio:
from centos:6
RUN groupadd -r myuser && adduser -r -g myuser myuser
USER myuser
#Install code, configure application, etc...
USER root
COPY run-my-app.sh /usr/local/bin/run-my-app.sh
RUN chown myuser:myuser /usr/local/bin/run-my-app.sh && \
chmod 744 /usr/local/bin/run-my-app.sh
USER myuser
ENTRYPOINT ["/usr/local/bin/run-my-app.sh"]
Prima della v17.09.0-ce, il Dockerfile Reference per il COPY
comando diceva:
Tutti i nuovi file e directory vengono creati con un UID e GID pari a 0.
Storia Questa caratteristica è stata monitorata attraverso molteplici temi GitHub: 6119 , 9943 , 13600 , 27303 , 28499 , Problema 30110 .
Il numero 34263 è il problema che ha implementato la funzionalità flag opzionale e il numero 467 ha aggiornato la documentazione.
chown
su 40 MB di file).