1. 서버에 연결
SSH를 사용하여 서버에 연결합니다.
ssh root@<server-ip>
2. 로그인 자격 증명에 액세스
귀하의 애플리케이션을 관리하기 위해 fastapi라는 전용 사용자가 생성되었습니다.
이 파일에서 로그인 자격 증명을 찾을 수 있습니다. /root/.fastapi-creds
이를 보려면 다음을 실행하십시오.
cat /root/.fastapi-creds
비밀번호를 변경하려면 다음을 사용하세요.
passwd fastapi
3. 앱 사용자로 전환
앱을 관리하려면 fastapi 사용자 계정으로 전환하세요.
su - flask
이 계정에는 FastAPI 프로젝트와 환경이 포함되어 있습니다.
4. 프로젝트 구조
기본 디렉터리 레이아웃은 다음과 같습니다.
/home/fastapi/fastapi_app/
├── main.py → Your main FastAPI application file
├── venv/ → Virtual environment
└── __pycache__/ → Compiled Python files (auto-generated)
5. 애플리케이션 관리
애플리케이션 디렉터리로 이동합니다.
cd ~/fastapi_app
가상 환경을 활성화합니다.
source venv/bin/activate
기본 앱 파일을 편집합니다.
nano main.py
변경 사항을 적용하려면 FastAPI 서비스를 다시 시작하세요.
sudo systemctl restart uvicorn-fastapi
6. 로그 보기
다음과 같이 Uvicorn 및 Nginx에 대한 로그를 확인할 수 있습니다.
- Uvicorn 로그:
/var/log/uvicorn/ - Nginx 오류 로그:
/var/log/nginx/error.log - Nginx 액세스 로그:
/var/log/nginx/access.log
이를 보려면:
sudo tail -f /var/log/uvicorn/*
7. API에 액세스하기
서비스가 실행되면 브라우저에서 다음 주소로 FastAPI 앱을 사용할 수 있습니다. http://<server-ip>
Nginx는 FastAPI 앱을 실행하는 Uvicorn 소켓에 HTTP 요청을 자동으로 전달합니다.
8. 도메인 또는 포트 변경
서버 이름, 포트 또는 도메인을 업데이트하려는 경우:
- Nginx 사이트 구성 편집:
sudo nano /etc/nginx/sites-available/uvicorn-fastapi - 테스트 구성:
sudo nginx -t - Nginx를 다시 로드합니다:
sudo systemctl restart nginx
9. 유비콘 서비스
FastAPI 앱은 uvicorn-fastapi라는 systemd 서비스를 통해 실행됩니다.
그것은 사용한다 /home/fastapi/fastapi_app/main:app 애플리케이션 진입점으로 사용되며 실패 시 자동으로 다시 시작됩니다.
서비스를 관리하려면:
systemctl status uvicorn-fastapi
systemctl restart uvicorn-fastapi
서비스를 편집하려면:
sudo vim /etc/systemd/system/uvicorn-fastapi.service
sudo systemctl daemon-reload
sudo systemctl restart uvicorn-fastapi
sudo systemctl status uvicorn-fastapi
10. HTTPS 활성화(선택 사항)
Certbot을 사용하여 HTTPS를 활성화하세요.