Dockerfile과 docker-compose.yml 파일
docker-compose.yml에 개발중이라는 dev변수에 true를 설정하고
빌드를 docker build . 이명령어로 하는데 끊임없이 내가 원하는내용으로 안된다.
그래서 얼마전 설치한 cursor 라는 코드편집기에 물어보았더니
엄청 상세히 대답해준다.
docker-compose.yml 파일의 설정을 사용하여 Dockerfile을 빌드하려면 docker-compose up --build 또는 docker-compose build 명령을 사용해야 합니다.
결론은 명령창에서 docker build . 이 명령어가 아닌 docker-compose build 명령어를 사용해야 의도한대로 된다는 점이다.
FROM python:3.9-alpine3.13
LABEL maintainer="sharpscar <sharpscar@gamil.com>"
ENV PYTHONUNBUFFERED 1
COPY ./requirements.txt /tmp/requirements.txt
COPY ./requirements.dev.txt /tmp/requirements.dev.txt
COPY ./app /app
WORKDIR /app
EXPOSE 8000
ARG DEV=false
RUN echo "$DEV"
RUN python -m venv /py && \
/py/bin/pip install --upgrade pip && \
/py/bin/pip install -r /tmp/requirements.txt && \
if [ $DEV = "true" ]; \
then /py/bin/pip install -r /tmp/requirements.dev.txt ; \
fi && \
rm -rf /tmp && \
adduser \
--disabled-password \
--no-create-home \
django-user
ENV PATH="/py/bin:$PATH"
USER django-user
================================================================================
docker-compose.yml
version: "3.9"
services:
app:
build:
context: .
args:
- DEV=true
ports:
- "8000:8000"
volumes:
- ./app:/app
command: >
sh -c "python manage.py runserver 0.0.0.0:8000"
댓글 없음:
댓글 쓰기