TIL(2020) - 1/30일(목) for 배포

개발풋볼러·2020년 1월 30일
0

TIL(2020)

목록 보기
1/7

EC2 - Container(80:8000) - (screen)runserver:8000 - Django

EC2 - Container(80:8000) - gunicorn:8000 - Django

EC2 - Container(80:80) -Nginx:80 - gunicorn:UnixSocket - Django =>>> 최종 목적지


Gunicorn(WSGI)

  • 웹 서버로 전달된 요청을 파이썬 애플리케이션에게 적절히 번역하여 전달
  • 파이썬 애플리케이션의 응답을 적절히 웹서버에게 번역하여 전달
  • 웹 서버의 역활도 탑제하고 있음
  • 유닉스 도메인 소켓 : Unix 도메인 소켓 또는 IPC 소켓은 동일한 호스트 운영 체제에서 실행되는 프로세스간에 데이터를 교환하기위한 데이터 통신 엔드 포인트입니다. UNIX 도메인에서 유효한 소켓 유형은 다음과 같습니다.(위키백과)
    ** 소켓 개념
  • pip install gunicorn
  • gunicorn을 추가해준 후에 poetry export 하여 requirements.txt에 변경사항을 적용해줌, 그리고 docker build를 통해서 이미지 레이어를 생성

Nginx(WebServer)

  • 외부에서 오는 요청을 어딘가로 전달하는 데 특화
  • 정적 컨텐츠 서빙

Django(Web application)

  • 외부에서 오는 요청에 대한 동적 응답을 생성

poetry(패키지 버전관리 관리자)

  • pip로 사용하여 패키지로 설치하는 것을 권장하지 않음 brew를 이용하여 설치하기 바람!!!

  • 버전을 지정한 패키지 기준으로 다른 패키지들의 버전이 통제됨

  • $ curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python

  • $ vi ~/.zshrc

    # pyenv의 PATH
    export PYENV_PATH=$HOME/.pyenv
    if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi
    if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi
    
    # poetry실행파일의 PATH가 pyenv의 PATH보다 우선되도록 설정합니다
    export PATH=$HOME/.poetry/bin:$PATH
  • $ poetry init (name : wps-instagram)

  • $ poetry add 'django<3' boto3 django-extensions django-storages django-secrets-manager pillow psycopg2-binary requests =>>>>>>>>> /.requirements/base.txt에 있는 내용을 포에트리에 추가

  • $ poetry add notebook --dev =>>>>>>>>>>>>>>>. /.requirements/dev.txt 에 있는 내용 추가

  • $ poetry export -f requirements.txt > requirements.txt

aws 명령줄 인터페이스 $ brew install awscli

profile
안녕하세요. 웹개발을 공부중입니다.

0개의 댓글