Gunicorn 3

아마존 리눅스2 - 아나콘다 - Gunicorn - nginx - git 을 이용한 장고(django)서버 배포(4)

1. 장고가 들어있는 폴더의 소유자와 그룹을 모두 ec2-user 로 바꾸어준다 chown ec2-user:ec2-user {프로젝트 폴더 이름} 2. 장고의 settings.py안의 디버그 모드를 꺼 주어야 한다. DEBUG = False 3. 제대로 실행되는지 확인, 로그가 뜨고 아무런 에러가 나지 않으면 정상 실행되고 있는것이다. gunicorn --bind 127.0.0.1:8000 server.wsgi:application 4. gunicron 소켓파일 생성 , 소켓 유저가 프로젝트 소유자 인지 확인해 준다(기본값은 root) sudo vi /etc/systemd/system/gunicorn.socket [Unit] Description=gunicorn socket [Socket] ListenS..

아마존 리눅스2 - 아나콘다 - Gunicorn - nginx - git 을 이용한 장고(django)서버 배포(3)

eval "$(/home/ec2-user/anaconda3/bin/conda shell.bash hook)" 1. 접속한뒤 yum 패키지 업데이트를 한다 2. 아나콘다 설치, wget를 이용하여 받은뒤, bash를 이용하여 설치한다 wget https://repo.anaconda.com/archive/Anaconda3-2022.05-Linux-x86_64.sh bash {다운로드된 파일 이름} 배쉬셀에 등록된 명령어를 사용하려면 터미널이 재시작 되어야 한다. 나갔다 다시 들어오거나 터미널을 재실행 한다. 그럼 아래와 같이 터미널에 현재 가상환경(base)를 확인할 수 있다. 혹시 실수로 no를 했거나 제대로 등록이 안되어 있다면 vi ~/.bashrc 로 들어가 # >>> conda initialize ..

아마존 리눅스2 - 아나콘다 - Gunicorn - nginx - git 을 이용한 장고(django)서버 배포(1)

회사의 인프라를 대대적으로 교체하면서 ec2 인스턴스는 아마존 리눅스 가상환경은 아나콘다 WSGI 미들웨어로는 Gunicorn 웹 서버로는 nginx를 사용하기로 했다. 현재 회사의 인스턴스 OS는 ubuntu 18버전 으로 지원이 중단된 이미지 이기도 했고, 인프라 및 자료 구조 관리가 제대로 안된탓에(DB와 다른 VPC, 배포를 위한 무수한 삽질의 흔적, 이용하고 있지 않지만 설치되어있는 무수한 가상환경과 라이브러리들, 어느순간부터 git으로 관리되고 있지 않는 프로젝트) 사실상 새로 만들어서 관리하는 편이 성능 개선에 있어 빠를것으로 예상되었다. 가상환경 설정은 고작 웹 서버를 돌리는데 아나콘다는 무겁지 않냐는 생각을 할 수 있으나, 회사의 자동견적 프로젝트가 아나콘다 채널에서 관리되는 python..