처음 시작하면서 runserver로 배포를 하려고 했는데, 어디서 뭐가 들어가는지 감이 잡히질 않았다.
sudo apt install docker.io -y
mkdir backend
)ubuntu/home
에 docker-compose.yml
을 편집을 하여 만들어 준다!version: '3.8'
services:
backend:
container_name: backend
build: ./backend/
entrypoint: sh -c "python manage.py collectstatic --no-input && python manage.py migrate && python manage.py runserver 0.0.0.0:8000"
volumes:
- ./backend/django/:/app/
- /etc/localtime:/etc/localtime:ro
restart: always
backend/Dockerfile
에 편집을 하여 만들어 준 뒤# python 3.10.8버전 이미지를 사용해 빌드
FROM python:3.10.8
# .pyc 파일을 생성하지 않도록 설정합니다.
ENV PYTHONDONTWRITEBYTECODE 1
# 파이썬 로그가 버퍼링 없이 즉각적으로 출력하도록 설정합니다.
ENV PYTHONUNBUFFERED 1
# /app/ 디렉토리를 생성합니다.
RUN mkdir /app/
# /app/ 경로를 작업 디렉토리로 설정합니다.
WORKDIR /app/
# requirments.txt를 작업 디렉토리(/app/) 경로로 복사합니다.
COPY ./django/requirements.txt .
# 프로젝트 실행에 필요한 패키지들을 설치합니다.
RUN pip install --no-cache-dir -r requirements.txt
sudo docker compose up -d —build
를 이용하여 확인을 하니 logs 상에서도 문제가 없고