Este es un mensaje de error que recibo al crear una imagen de Docker:
Paso 18: EJECUTE mkdir / var / www / app && chown luqo33: www-data / var / www / app ---> Ejecutando en 7b5854406120 mkdir: no se puede crear el directorio '/ var / www / app': No existe tal archivo o directorio
Este es un fragmento de Dockerfile que causa el error:
FROM ubuntu:14.04
RUN groupadd -r luqo33 && useradd -r -g luqo33 luqo33
<installing nginx, fpm, php and a couple of other things>
RUN mkdir /var/www/app && chown luqo33:www-data /var/www/app
VOLUME /var/www/app
WORKDIR /var/www/app
"mkdir: no se puede crear el directorio '/ var / www / app': no hay tal archivo o directorio" suena tan absurdo - por supuesto que no existe tal directorio. Quiero crearlo. ¿Que esta mal aquí?
mkdir /var/www/app
en un sistema que no tuviera un/var/www
sin él.Respuestas:
El problema es que
/var/www
tampoco existe ymkdir
no es recursivo de forma predeterminada: espera que exista el directorio principal inmediato.Utilizar:
... o instale un paquete que cree un
/var/www
antes de llegar a este punto en su Dockerfile.fuente
/var/www
?Al crear subdirectorios que cuelgan de un directorio principal no existente, debe pasar la
-p
bandera amkdir
... Actualice su Dockerfile conProbé esto y es correcto.
fuente
También puede simplemente usar
Creará automáticamente las carpetas si no existen.
Luego, vuelva al directorio en el que debe estar.
fuente
Además de los casos de uso anteriores, también puede utilizar Docker Compose para crear directorios en caso de que desee crear nuevas carpetas ficticias en
docker-compose up
:fuente