- Intermédiaire
- Sécurité
Comment ça marche
COPY crée des fichiers appartenant à root sauf si --chown est précisé. Un volume nommé prend le propriétaire du dossier sur lequel il est monté la première fois ; un bind mount garde le propriétaire qu'ont les fichiers sur le serveur, un UID qui peut ne pas exister dans le conteneur.
Ce qui casse
chmod 777 fait disparaître l'erreur et ouvre le dossier à tous les processus. Donne plutôt le dossier à l'utilisateur de l'application (chown ou COPY --chown), et vérifie avec docker exec api ls -ld sur ce dossier.
Dans un terminal
docker exec api id
docker exec api ls -ld /app/uploads
Regarde-le casser, puis répare-le
Écris le Dockerfile ou le fichier compose, tape les commandes docker, et regarde un serveur simulé les exécuter à travers redémarrages, mises à jour et trafic. Gratuit pour commencer.