soultreemk 2021. 5. 22. 04:47
  1. 로컬에서 django 웹사이트를 완성하고 서버에 업로드 한다.
    1. aws ec2의 경우, SSH 연결, 보안그룹, elastic IP 설정을 해준다.
  2. gunicorn 혹은 uwsgi 를 이용하여 배포 서버에서의 django 실행 환경을 만든다.
    1. manage.py runserver 가 아니라 guicorn이나 uwsgi 를 이용하여 django 서버를 실행시켜야 한다.
      (runserver 는 개발용이므로 실제 서비스를 운영하는데 부적합하기 때문에 실제로 어플리케이션을 서비스할 때는 웹서버를 사용하게 된다 - 장고와 웹서버를 연결해주기 위해 wsgi설치)
    2. 80 port 로 요청이 들어와도 (일반적인 브라우저 http 요청) 8000번에서 실행되고 있는 django 서버로 요청을 라우팅 하기위해 nginx 설정파일을 수정해야 한다.
  3. 정적인 파일들에 대한 처리를 해준다.
    1. manage.py collectstatic 으로 django 프로젝트 내 정적파일을 한군데 모아준다.
    2. nginx 설정파일을 수정하여, 정적파일 요청 시, 정적파일이 모인 곳으로 라우트 해준다.
  4. 도메인 연결 작업을 하여 IP가 아닌 도메인으로 접속할 수 있게 한다.
    1. whois 와 같은 도메인 업체에서 원하는 도메인을 구매한다.
    2. aws ec2의 경우 route 53 을 이용하여, 내 서버와 도메인을 연결한다

-----------------

 

<전체 흐름 상세하게 정리해놓은 사이트  - 강추>

https://nachwon.github.io/django-deploy-1-aws/

 

그외 참고사이트

https://dailyheumsi.tistory.com/21

 

 

https://medium.com/@inerplat/%EB%94%A5%EB%9F%AC%EB%8B%9D-%EC%9B%B9%EC%84%9C%EB%B9%84%EC%8A%A4-%EA%B0%9C%EB%B0%9C-%EB%8F%84%EC%A0%84%EA%B8%B0-e9ca38d53c1b

 

https://brunch.co.kr/@chris-song/91