먼저 원격 저장소(github)를 만들어 준다.
이때, README.md 파일과 .gitignore (파이썬)파일을 같이 만들어주면 좋다.
git repo 를 생성하고 로컬로 이동한다.
연결하고 싶은 위치의 경로에서 아래 명령어를 실행한다.
git init
git remote add origin {github 주소}
git remote -v
git pull origin main
code .
이제 파이썬 가상환경 만들어주기
python3 -m venv venv
python3 --version
source venv/bin/activate
which pip
# 기대 출력값
# /Users/kimminhyeok/workspace/dev_django_app/venv/bin/pip
# 가상 환경쪽에서 pip 를 가져오는게 보여지면 good!
가상환경에 Django 설치하기
pip install django
pip freeze
pip freeze | grep Django > requirements.txt
앱 생성 : Startapp
django-admin startproject {app name}
서버 열어보기
cd {app name}
python3 manage.py runserver
이제 기존에 열어두었던 클라우드 서버에 접속
ssh lion@likelion # 이후 비밀번호 입력
원하는 경로로 이동하여 방금 생성한 git repo 를 clone !
git clone {<https://~~>}
app 안쪽에서 다시 가상환경을 셋팅해주자. 로컬에서 했던것 처럼
sudo apt-get update
sudo apt install python3.8-venv
python3 -m venv venv
source venv/bin/activate
$ which pip
# /home/lion/app/Dev_django_app/venv/bin/pip
과정 및 결과,
이제 requirements 에 있는 필요한 것들 설치
pip install -r requirements.txt
아마 다 설치하고 서버를 run 한다고 하더라도 지금 현재는 페이지가 열리지 않을 것이다.
이유는 네이버 클라우드에서 access group 규칙을 설정하지 않아서 그렇다.
NCP → Sever → ACG 에서 사용할 그룹을 하나 만들고 규칙설정으로 들어온다.
모든 소스에서 장고 포트로 접근이 가능하게 규칙 생성
+여기서 myIP 로 내 네트워크 내에서만 가능하게도 할 수 있다.
이후 Server 로 돌아와서 ACG 수정을 클리해 생성한 규칙을 추가해 준다.
이제 개발서버로만 접속하게 해둔 내용이 아닌 모든 포트로 전환해서 서버를 실행시켜야한다.
python3 manage.py runserver 0.0.0.0:8000
서버에 접속후 공인IP 를 본인의 NCP 서버 공인 IP 로 변경하면 아까와는 다른 페이지가 뜬다.
URL : http://{NCP 에서 가져온 공인 IP 주소}:8000/
“Disallowed Host at/…” → 보안과 관련한 필터에서 걸러졌다는 뜻
local 로 돌아와 settings.py에서 ALLOWED_HOSTS 에 본인 공인IP 를 넣어 수정한다.
ALLOWED_HOSTS = [
"***.***.***.***",
]
이후 원격 저장소로 push 하고 다시 배포 서버에서 가져와 배포를 진행한다.
배포 서버를 열었던 터미널에서 서버를 종료했다가,
git pull
python3 manage.py runserver 0.0.0.0:8000
결과물
서버를 열었고, 공인 IP 주소로 장고포트를 통해 정상접속한 내용을 확인헀다.
'Dev. > Cloud' 카테고리의 다른 글
[Cloud] 배포 - NCP : Nginx, gunicorn (0) | 2023.08.03 |
---|---|
[Cloud] 배포 - NCP : 자동 배포 (0) | 2023.08.01 |
[Cloud] 시작 - NCP : VScode 로 원격 접속하기 (0) | 2023.07.29 |
[Cloud] 시작 - NCP : Server 띄우기 (0) | 2023.07.28 |
[Cloud] 시작 - NCP : 권한 부여 (0) | 2023.07.27 |
댓글