моя контактная информация
Почтамезофия@protonmail.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
«Девочка, это зависит от удачи, когда мы встретимся снова. Не притворяйся, что не знаешь друг друга. Не дрожь, когда говоришь: «Давно не виделись»…»
Чтобы развернуть серверный API, написанный на Python, в среде Linux, вы можете выполнить подробные шаги, описанные ниже. В этой статье будет рассмотрена подготовка среды, написание API, использование Gunicorn в качестве сервера WSGI, настройка Nginx в качестве обратного прокси-сервера и использование Systemd для управления службами.
Если Python не установлен в вашей системе Linux, вы можете использовать следующую команду для его установки:
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 и управление несколькими процессами.
Установите Ганикорн:
pip3 install gunicorn
Запустите приложение Flask с помощью Gunicorn:
gunicorn --bind 0.0.0.0:8000 app:app
Используйте Gunicorn для запуска приложений Django:
gunicorn --bind 0.0.0.0:8000 myproject.wsgi:application
Установите Нгинкс:
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. Вы можете настроить конфигурацию по мере необходимости в соответствии с потребностями вашего конкретного проекта. Надеюсь, это подробное руководство было полезным!