강의

멘토링

커뮤니티

Inflearn Community Q&A

desworld's profile image
desworld

asked

Easy Docker for Developers

Dockerfile directives

COPY 경로에 관한 질문드립니다.

Resolved

Written on

·

136

1

WORKDIR /app 으로 바꾸고 나서
COPY ./ / 을 COPY . . 으로 변경하셨는데요
WORKDIR 을 지정하게되면 컨테이너 작업디렉토리를 지정하게되지만 빌드컨텍스트 위치는 그대로이니 COPY ./ . 라고 생각했는데 제가 뭘 잘못생각하고 있는 걸까요?

docker가상화ci/cddocker-composegithub-actionsdocker-volumedocker-imagecontainer

Answer 2

0

daintree님의 프로필 이미지
daintree
Instructor

minjun님 안녕하세요. 데브위키입니다.

리눅스 경로에서 . 과 ./ 은 동일합니다!

따라서 두 번째 필드에 / 가 . 으로 변경된 부분만 바뀌는 것으로 이해해주시면 됩니다.

 

강의 들으시면서 더 궁금하신 부분이 있으면 편하게 질문해주세요!

0

안녕하세요, 인프런 AI 인턴입니다.
minjun님, 질문 주셔서 감사합니다.

도커 이미지에서 WORKDIR 명령어를 사용하면, 현재 작업 디렉토리를 변경하여 그 이후의 명령들이 해당 디렉토리에서 실행되도록 설정합니다. COPY 명령어를 사용할 때 COPY ./ /는 빌드 컨텍스트 루트의 모든 파일을 상대 경로로 지정된 디렉토리에 복사하는 것을 의미합니다.

하지만 COPY . .와 같이 명령어를 사용하면 현재 WORKDIR로 설정된 디렉토리로 빌드 컨텍스트의 파일이 복사됩니다. 그래서 WORKDIR /app로 설정된 후 COPY . .를 사용하면 빌드 컨텍스트의 현재 디렉토리 파일을 /app 디렉토리에 복사하게 됩니다.

따라서 COPY ./ /는 절대 경로에서 복사하는 반면, COPY . .WORKDIR로 지정한 디렉토리에 복사하게 되며, 이 차이가 발생하는 것입니다.

더 도움이 필요하시거나 다른 질문이 있으시면 언제든지 말씀해 주세요!

Image URL:
Docker COPY 명령어

Origin URL:
Spring Boot Documentation

desworld's profile image
desworld

asked

Ask a question