Files

65 lines
1.4 KiB
Markdown

# Runbook: Обновление
## Стандартное обновление
```bash
# 1. Забрать новую версию
cd /opt/voidea
git pull origin main
# 2. Активировать виртуальное окружение
source venv/bin/activate
# 3. Обновить зависимости
pip install -r requirements.txt
# 4. Применить миграции БД
alembic upgrade head
# 5. Перезапустить сервис
systemctl restart voidea
# 6. Проверить health
curl http://localhost:8020/api/v1/health
```
## Обновление с минимальным даунтаймом
```bash
# 1. Запустить второй инстанс на другом порту
DATABASE_URL=... uvicorn app.main:app --port 8021 &
# 2. Проверить его health
curl http://localhost:8021/health
# 3. Переключить systemd или Nginx на новый порт
# 4. Остановить старый
```
## Откат
```bash
# 1. Откатить код
cd /opt/voidea
git revert HEAD
# 2. Откатить БД (если была миграция)
alembic downgrade -1
# 3. Перезапустить
systemctl restart voidea
```
## Миграция БД
```bash
# Сгенерировать новую миграцию
alembic revision --autogenerate -m "description"
# Применить
alembic upgrade head
# Откатить
alembic downgrade -1
```