# Деплой бота PrimeKraft в Docker на Ubuntu 22 ## Требования на сервере - Ubuntu 22.04 LTS - Docker и Docker Compose: `sudo apt update && sudo apt install -y docker.io docker-compose-v2` (или [официальная установка Docker](https://docs.docker.com/engine/install/ubuntu/)) ## Подготовка на сервере 1. Склонируйте или скопируйте проект на сервер в каталог, например `/opt/primekraft-bot`. 2. Создайте файл **`.env`** в корне проекта (рядом с `docker-compose.yml`) со всеми переменными, как в локальной разработке (см. WINDOWS_SETUP.md). Пример: ```env BOT_TOKEN=... TG_CHAT_ID=... GOOD_REVIEWS_THREAD_ID=... BAD_REVIEWS_THREAD_ID=... REVIEWS_SHEET_LINK=... OZON_API_KEY=... OZON_CLIENT_ID=... WB_API_KEY=... GPTUNNEL_API_KEY=... ``` 3. Положите ключ Google Sheets в каталог **`google-auth/key.json`** (сервисный аккаунт). ## Запуск ```bash cd /opt/primekraft-bot docker compose build docker compose up -d ``` Проверка логов: ```bash docker compose logs -f bot ``` ## Остановка и обновление - Остановка: `docker compose down` - Остановка с удалением данных (БД): `docker compose down -v` - Пересборка и перезапуск после изменений кода: ```bash docker compose build --no-cache docker compose up -d ``` ## Данные - База SQLite хранится в Docker-томе **`bot-data`** (путь в контейнере: `/data/db.sqlite3`). При `docker compose down` без `-v` данные сохраняются. - Файл **`google-auth/key.json`** монтируется с хоста (read-only), менять ключ можно без пересборки образа.