내 연락처 정보
우편메소피아@프로톤메일.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
"얘야, 우리 다시 만날 건 운에 달렸어. 모르는 척 하지 마. "오랜만이야"라고 떨지 말고..."
Python으로 작성된 백엔드 API를 Linux 환경에 배포하려면 아래의 세부 단계를 따르세요. 이 기사에서는 환경 준비, API 작성, Gunicorn을 WSGI 서버로 사용, Nginx를 역방향 프록시로 구성 및 Systemd를 사용하여 서비스 관리에 대해 설명합니다.
Linux 시스템에 Python이 설치되어 있지 않은 경우 다음 명령을 사용하여 설치할 수 있습니다.
sudo yum update
sudo yum install python3 python3-pip
Flask 또는 Django 프레임워크를 사용한다고 가정하고 먼저 필수 라이브러리를 설치하십시오.
pip3 install flask # 如果你使用的是 Flask
pip3 install django # 如果你使用的是 Django
간단한 Flask API 예제를 만듭니다.
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/api', methods=['GET'])
def api():
return jsonify({'message': 'Hello, World!'})
if __name__ == '__main__':
app.run(host='0.0.0.0')
새 Django 프로젝트를 만들고 API를 추가합니다.
django-admin startproject myproject
cd myproject
django-admin startapp myapp
존재하다 myapp/views.py
다음 위치에 API 보기를 추가하세요.
from django.http import JsonResponse
def api(request):
return JsonResponse({'message': 'Hello, World!'})
존재하다 myproject/urls.py
다음에서 URL 라우팅을 구성합니다.
from django.contrib import admin
from django.urls import path
from myapp.views import api
urlpatterns = [
path('admin/', admin.site.urls),
path('api/', api),
]
개발 또는 테스트 환경에서 애플리케이션을 빠르게 시작하려면 직접 실행할 수 있습니다.
python main.py 或者 nohup python main.py
Django에는 다음과 같이 시작할 수 있는 자체 개발 서버가 있습니다.
python manage.py runserver 0.0.0.0:8000
프로덕션 환경에서는 Gunicorn을 사용하는 것이 좋습니다. 프로덕션 환경에서 애플리케이션의 성능과 안정성을 보장하려면 Gunicorn을 사용하는 것이 좋습니다.구니콘 애플리케이션 서버로서 Python 코드 실행 및 다중 프로세스 관리를 처리합니다.
Gunicorn 설치:
pip3 install gunicorn
Gunicorn을 사용하여 Flask 애플리케이션을 실행합니다.
gunicorn --bind 0.0.0.0:8000 app:app
Gunicorn을 사용하여 Django 애플리케이션을 실행합니다.
gunicorn --bind 0.0.0.0:8000 myproject.wsgi:application
Nginx를 설치합니다:
sudo yum install nginx
구성 파일 편집 /etc/nginx/sites-available/default
:
server {
listen 80;
server_name your_domain_or_IP;
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Nginx 구성을 다시 로드합니다.
sudo systemctl restart nginx
새 Systemd 서비스 파일을 만듭니다.
sudo vim /etc/systemd/system/myproject.service
[Unit]
Description=Gunicorn instance to serve myproject
After=network.target
[Service]
User=your_user
Group=www-data
WorkingDirectory=/path/to/your/project
ExecStart=/usr/bin/gunicorn --workers 3 --bind unix:myproject.sock -m 007 app:app
[Install]
WantedBy=multi-user.target
할 것이다 ExecStart
줄을 다음으로 변경합니다.
ExecStart=/usr/bin/gunicorn --workers 3 --bind unix:myproject.sock -m 007 myproject.wsgi:application
서비스를 시작하고 활성화합니다.
sudo systemctl start myproject
sudo systemctl enable myproject
서비스가 실행 중인지 확인하세요.
sudo systemctl status myproject
이러한 방식으로 Python API가 Linux 환경에 성공적으로 배포됩니다. 특정 프로젝트 요구 사항에 맞게 필요에 따라 구성을 조정할 수 있습니다. 이 자세한 가이드가 도움이 되었기를 바랍니다.