728x90 반응형 전체 글115 [Cloud] 배포 - NCP : Nginx 설정파일 Nginx 설정파일 준비 Nginx 에서 웹 어플리케이션을 서비스 하려면, 해당 어플리케이션에 대한 설정이 있어야한다. Nignix 의 파일 구조에서 nginx 는 메인 설정 파일로 **/etc/nginx/nginx.conf**에 위치한다. sittes-available 은 사용가능한 사이트의 설정파일을 저장하고, sites-enabled 는 활성화된 설정 파일을 저장한다. 그리고 conf.d 는 추가파일을 저장할 수 있는 디렉토리이다. 클라이언트가 특정 URL 로 요청을 보내면 Nginx 가 해당 요청을 수신한다. 요청은 설정 파일에서 정의된 리스닝 포트로 들어온다. 위에서 설정한 gunicorn 설정은 Nginx 의 available 존재하지만 enable 쪽에 심볼릭 링크를 만들어 연결지으면 실제 .. Dev./Cloud 2023. 8. 4. [Cloud] 배포 - NCP : Nginx, gunicorn 실제로 웹 어플리케이션이 배포되는 과정에선 필요한 부분이 더 많다. 우선 지금 배포하려고 하는 django 프로젝트를 gunicorn 이라는 파이썬 기반 wsgi 에 연결해보자. django 서버에 gunicon 을 설치하여 WSGI (Web Server Gateway Interface) 인 gunicorn 에서 통신을 단순화하고 표준화하는 역할을 수행하게끔 설정한다. source venv/bin/activate cd Dev ... # 해당 app 경로로 가서 구니콘의 경우 파이썬 패키지에서 다운이 가능하다. pip install gunicorn 구니콘의 config 파일을 settings.py 파일이 있는 곳에 만들어준다. vi lion_app/gunicorn_config.py # bind 해서 800.. Dev./Cloud 2023. 8. 3. Django : 프로그램 구조 이해하기 Django 는 파이썬으로 웹프로그래밍을 할 수 있는 아주 실용적인 프레임워크이다. 하지만 아무리 프레임워크라고 하더라도 개발자마다 회사마다 적용하는 프로그램의 구조자체는 다를 수 있다. 그 와중에 Django 에서 제공하는 기본적인 틀과 데이터가 움직이는 과정들을 살펴보자. Django 는 프로젝트 아래 애플리케이션들이 추가되는 형태를 가지고 있다. config 는 Django 로 프로젝트를 열어서 생성되는 기본적인 “틀”에 가깝다. “pybo” 는 틀 안에 생성된 서비스로 보면 된다. config - settings 내에서 우선 ALLOWED_HOSTS 에 IP 주소를 등록해서 CORS 접근이 가능하도록 설정하는게 좋다. config - urls 내에서 먼저 서비스에 사용할 URL 을 등록해 놓고 “.. Dev./Django & DRF 2023. 8. 2. [Cloud] 배포 - Shell Script : 자동실행 스크립트 가상환경에서 동작시키다보면 가끔 가상환경을 빠져나가서 다시 설정해줘야하는 경우가 생겼다. 그래서 자동 배포를 하면서 사용했던 방법으로 자동으로 환경을 조성하고 실행시켜주는 스크립트를 만들었다. 우선 지금 실행시킬 내용이 최신이 될 수있도록 pull 을 받고, 가상환경을 적용 시키는 과정으로 로직을 생각했다. #!/bin/bash APP_NAME=lion_app # git pull echo "Start to execute git pull" git pull # 가상환경 적용 (source) echo "Start activate venv" source venv/bin/activate # runserver echo "Start execute runserver command" python3 $APP_NAME/ma.. Dev./Docker 2023. 8. 2. [Cloud] 배포 - NCP : 자동 배포 수동으로 배포를 해보았으니, 자동으로 배포하는 과정을 한번 진행해보자. 위 일련의 과정들을 쉘 스크립트로 작성 (로컬쪽에 저장해두기) #!/bin/bash # git clone echo "Start to clone" git clone {.....} cd Dev_django_app # venv 설치 echo "Start to install venv" sudo apt-get update sudo apt install -y python3.8-venv # venv 구성 echo "Start to make venv" python3 -m venv venv # 가상환경 작동 echo "Start to activate venv" source venv/bin/activate # pip install echo "start.. Dev./Cloud 2023. 8. 1. 이전 1 ··· 15 16 17 18 19 20 21 ··· 23 다음 728x90 반응형