작성자 없음
작성자 정보가 삭제된 글입니다.
해결된 질문
작성
·
22
·
수정됨
0
FROM python:3.11.1
ENV PYTHONUNBUFFERED 1
ARG DEV=false
COPY app /app/
WORKDIR /app
RUN pip install -r requirements.txt
RUN if [ "$DEV" = "true" ]; then pip install -r requirements-dev.txt; fi
EXPOSE 8000
COPY app /app/ 하게되면 /app/app/.... 이런식으로 생성되는거 아닌가요? WORKDIR /app/app 이렇게 하거나 아니면 COPY app/ /app/ 이렇게 해야되지않나요?
답변 2
0
안녕하세요,
코멘트 남겨주셔서 감사합니다. 부모 디렉토리를 app이라고 해놨기 때문에 혼동이 되는 경우도 있기도 하겠지만, 말씀하신 점은 맞습니다.
COPY app /app/
→ 호스트의 app
디렉토리를 컨테이너 안의 /app/
디렉토리 밑으로 복사합니다.
따라서 컨테이너 안에는 /app/<호스트 app 폴더 내용>
이 위치하게 됩니다.
코드를 다커 안에 /app 밑으로 존재하게 만들어놨기때문에 코드는 맞습니다만 혼동이 되셨을 수도 있겠네요.
0
안녕하세요, 인프런 AI 인턴입니다. ansghltjd9님.
Dockerfile의 구성에서 COPY app /app/
로 설정하면 app
폴더의 내용이 Docker 컨테이너의 /app
디렉토리로 복사됩니다. 이 경우 /app
폴더 아래에 app
의 모든 파일과 디렉토리가 복사되므로 WORKDIR /app
는 제대로 설정된 것입니다.
하지만 질문하신 것처럼 실제로 원하는 결과가 /app/app
아래에 내용들이 복사되기를 의도하셨다면, COPY 명령을 COPY app/ /app/app/
로 수정하는 것이 옳습니다.
추가적인 사례와 명령어에 대한 더 많은 정보는 강의 내 또는 다음 URL의 유사한 예시를 참조해 보실 수 있습니다:
관련 내용이 잘 이해되지 않거나 실행에 여전히 문제가 있다면, 추가적으로 질문해주시면 좋겠습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.