Container/Docker
도커 컨테이너에 Dockerfile의 부모 디렉터리 파일을 복사하는 방법
2mukee
2024. 8. 17. 17:08
320x100
320x100
문제 상황
/
|__settings.json
|__A
|__Dockerfile
|__B
|__Dockerfile
위와 같은 상황에서 각 Dockerfile이 settings.json을 컨테이너 이미지 안에 복사를 해야하는 상황
그러나 `COPY ../settings.json .` 지시자를 사용해도 가져올 수 없다
이유
build context 바깥의 파일을 복사할 수 없기 때문
build context란 도커 데몬이 이미지를 빌드할 때 참조하는 경로인데, docker build 명령 시 인자로 넘어간다
빌드 명령을 실행하면 도커 클라이언트는 build context 안의 파일을 tar로 압축해 도커 데몬에게 넘긴다
이 때문에 부모 디렉터리의 파일을 복사할 수 없는 것
해결 방법
빌드 명령을 실행할 때 build context를 부모 디렉터리로 지정한다
부모디렉터리$> docker build -f A/dockerfile .
Reference
Dockerfile에 부모 디렉토리의 파일을 복사 하는 방법
Dockerfile의 COPY 명령어는 해당 Dockerfile과 같은 디렉토리에 있는 파일만 복사할 수 있다. 그래서 대부분 프로젝트의 루트 디렉토리에 Dockerfile을 작성한다. 그런데 Dockerize 하려는 프로그램이 부모
velog.io
300x250
728x90