[Docker] Docker compose로 Django, Nginx 띄우기 - 1

JinUk Lee·2024년 10월 8일
0

Docker

목록 보기
6/10

서론

웹서버와 WAS, WSGI

우선 웹서버와 WAS, WSGI의 개념을 모른다면 위의 링크를 보고 오자.

기존에 django앱을 만들고 ec2를 활용하여 배포할 때는 docker 단일 컨테이너로 배포를 했다.

WAS, WSGI로 자주 쓰이는 nginx, gunicorn 없는데 왜 배포가 된건지 의문이 들었고, 구글링해보니 python manage.py runserver 은 django 내장 서버를

그런데, django 파일을 보면 아래와 같이 경고하고 있다.

HTTP server that implements the Python WSGI protocol (PEP 333, rev 1.21).
Based on wsgiref.simple_server which is part of the standard library since 2.5.
This is a simple server for use in testing or debugging Django apps. It hasn't
been reviewed for security issues. DON'T USE IT FOR PRODUCTION USE!

내장 서버는 간단한 테스트용일뿐 보안 이슈가 있으니 사용하지 말라는 것이다.

그래서 nginx, gunicorn을 도입해야 했고 django compose의 필요성을 느끼고 docker compose로 배포 방식을 바꿔야 했다.

폴더 구조 변경

git 폴더 구조 변경하는 법

이랬던 폴더 구조를

아래와 같이 변경했다.

즉, app과 같은 폴더에 nginx 폴더, docker-compose.yml 파일을 작성했다.

profile
개발자 지망생

0개의 댓글