강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

작성자 없음

작성자 정보가 삭제된 글입니다.

실리콘밸리 엔지니어가 가르치는 파이썬 장고 웹프로그래밍

[Optional] 다커(Docker)를 사용한 Django 환경 만들기

Dockerfile 질문

해결된 질문

작성

·

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의 유사한 예시를 참조해 보실 수 있습니다:

관련 내용이 잘 이해되지 않거나 실행에 여전히 문제가 있다면, 추가적으로 질문해주시면 좋겠습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

작성자 없음

작성자 정보가 삭제된 글입니다.

질문하기