이것은 Docker 이미지를 빌드 할 때 표시되는 오류 메시지입니다.
18 단계 : 실행 mkdir / var / www / app && chown luqo33 : www-data / var / www / app —> 7b5854406120에서 실행 mkdir : ‘/ var / www / app’디렉터리를 만들 수 없습니다 : 해당 파일 또는 디렉터리가 없습니다.
다음은 오류를 일으키는 Dockerfile의 일부입니다.
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 : ‘/ var / www / app’디렉토리를 만들 수 없습니다 : 해당 파일이나 디렉토리가 없습니다.”소리가 너무 무의미합니다. 물론 그러한 디렉토리는 없습니다. 나는 그것을 만들고 싶다. 여기서 무엇이 잘못 되었습니까?
답변
문제는 /var/www
역시 존재하지 않으며 mkdir
기본적으로 재귀 적이 지 않다는 것입니다. 즉, 바로 위의 상위 디렉토리가 존재할 것으로 예상합니다.
사용하다:
mkdir -p /var/www/app
… 또는 /var/www
Dockerfile에서이 지점에 도달하기 전에를 생성하는 패키지를 설치 하십시오.
답변
존재하지 않는 상위 디렉터리에서 중단되는 하위 디렉터리를 만들 때 -p
플래그를 mkdir
…로 전달해야 합니다. Dockerfile을 다음으로 업데이트하십시오.
RUN mkdir -p ...
나는 이것을 테스트했고 정확합니다.
답변
당신은 또한 단순히 사용할 수 있습니다
WORKDIR /var/www/app
폴더가 없으면 자동으로 생성됩니다.
그런 다음 있어야하는 디렉토리로 다시 전환하십시오.
답변
이전 사용 사례와는 별도로 Docker Compose 를 사용하여 새 더미 폴더를 만들려는 경우 디렉터리를 만들 수도 있습니다 docker-compose up
.
volumes:
- .:/ftp/
- /ftp/node_modules
- /ftp/files