Как развернуть приложение на Linux
Python
Middle
Без компании
Как развернуть приложение на Linux
Ответы
Для развертывания Python-приложения на Linux можно использовать несколько подходов:
- **Виртуальное окружение**:
```
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
```
- **Gunicorn + Nginx** (для веб-приложений):
```
pip install gunicorn
gunicorn -w 4 -b 0.0.0.0:8000 myapp:app
```
Затем настроить Nginx как reverse proxy.
- **Systemd** для демонизации:
Создать файл `/etc/systemd/system/myapp.service`:
```
[Unit]
Description=My Python App
After=network.target
[Service]
User=myuser
WorkingDirectory=/path/to/app
ExecStart=/path/to/venv/bin/gunicorn -w 4 myapp:app
[Install]
WantedBy=multi-user.target
```
- **Docker** (рекомендуемый способ):
```
FROM python:3.9
WORKDIR /app
COPY . .
RUN pip install -r requirements.txt
CMD ["python", "app.py"]
```
Ключевые моменты:
- Всегда используйте виртуальное окружение
- Для прода лучше использовать WSGI-сервер (Gunicorn, uWSGI)
- Настройте правильные права на файлы
- Рассмотрите использование .env для конфигурации