장고 도커를 이용한 배포(Nginx, Gunicorn)

Pywiki
둘러보기로 가기 검색하러 가기

1 개요[편집 | 원본 편집]

파이썬부터.

2 사전작업[편집 | 원본 편집]

과정 설명 방법
gunicorn 설치 pip install gunicorn
requirements.txt 제작 해당 환경에서 다음 명령을 진행하자. pip freeze > requirements.txt
도커, 도커 컴포즈 설치

3 파이썬 도커파일 제작[편집 | 원본 편집]

확장자 없이 Dockerfile을 제작한다.

# 사용하고 싶은 버전을 쓰자.
FROM python:3.6.0-alpine  
# 명령이 실행될 기본 경로
WORKDIR /app  
# .pyc 파일은 만들지 않는다.
ENV PYTHONDONTWRITEBYTECODE 1
# 파이썬 로그 버퍼링 없이 즉각출력.
ENV PYTHONUNBUFFERED 1
# 현재 경로의 파일들을 컨테이너 안의 /app 으로 옮긴다.
COPY ./ /app  
RUN pip install --upgrade pip
RUN pip install -r requirements.txt

4 docker-compose.yml 파일 제작[편집 | 원본 편집]

version: '3'

services:
    django:
        build: .  # 현재 위치의 도커파일을 사용하겠다는 의미.
        command: python manage.py runserver 0.0.0.0:8000  # 장고를 실행시킨다.
        command: gunicorn --bind 0:8000 config.wsgi:application  # wsgi 파일 위치에 따라 다르게.
        volumes:
            - ./:/app  # 파이썬 도커파일에서 복사한 것을 /app에서 그대로 연결하여 사용한다.