program tip

Dockerfile에서 RUN mkdir을 실행할 수 없습니다.

radiobox 2020. 8. 28. 07:19
반응형

Dockerfile에서 RUN mkdir을 실행할 수 없습니다.


이것은 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/wwwDockerfile에서이 지점에 도달하기 전에를 생성하는 패키지를 설치 하십시오.


존재하지 않는 상위 디렉토리에서 중단되는 하위 디렉토리를 만들 때 -p 플래그를 mkdir에 전달해야합니다 ... Dockerfile을 다음으로 업데이트하십시오.

RUN mkdir -p ... 

나는 이것을 테스트했고 정확한


당신은 또한 단순히 사용할 수 있습니다

WORKDIR /var/www/app

폴더가 없으면 자동으로 생성됩니다.

그런 다음 있어야하는 디렉토리로 다시 전환하십시오.

참고 URL : https://stackoverflow.com/questions/30741995/cannot-execute-run-mkdir-in-a-dockerfile

반응형