#!/bin/bash # Скрипт запуска бэкенда для продакшена (Gunicorn + Uvicorn workers) # Ожидается, что этот скрипт запускается внутри виртуального окружения или Docker echo "🚀 Запуск Radionica3D Backend (Production)..." # Путь до PrusaSlicer (если не задан через ENV) export SLICER_PATH=${SLICER_PATH:-"prusa-slicer"} # Запуск через Gunicorn для стабильности и параллелизма # -w 4: 4 рабочих процесса (стоит адаптировать под количество ядер) # -k uvicorn.workers.UvicornWorker: использование uvicorn для асинхронности venv/bin/gunicorn main:app \ --workers 4 \ --worker-class uvicorn.workers.UvicornWorker \ --bind 0.0.0.0:8000 \ --access-logformat '%(h)s %(l)s %(u)s %(t)s "%(r)s" %(s)s %(b)s "%(f)s" "%(a)s" %(L)s' \ --access-logfile - \ --error-logfile -