# Тестовый стенд (dev.schedule.our-place.ru) Отдельный стенд для обкатки админки: свой каталог, свои порты, своя база настроек. Прод (`/opt/schedule`, `schedule.our-place.ru`) не трогаем — он продолжает работать как раньше. Ветка: `admin-panel`. ## 1. Код ```bash sudo mkdir -p /opt/schedule-dev && sudo chown "$USER" /opt/schedule-dev git clone -b admin-panel <адрес репозитория> /opt/schedule-dev ``` Адрес — тот же, что у прода: если прод-клон забирает обновления по SSH, берите SSH-адрес (`ssh://git@git.our-place.ru:2222/Mermutef/schedule.git`), если по HTTPS — HTTPS-адрес с токеном: ```bash git clone -b admin-panel https://Mermutef:<токен>@git.our-place.ru/Mermutef/schedule.git /opt/schedule-dev ``` ## 2. .env Скопировать `.env.example` в `/opt/schedule-dev/.env` и заполнить: ```ini SCHEDULE_LINK=https://disk.yandex.ru/i/... SCHEDULE_INTERVAL_MINUTES=15 SCHEDULE_RETRY_AFTER=60 ADMIN_PATH=/manage-<секретная-часть> ADMIN_LOGIN=<логин> ADMIN_PASSWORD=<пароль> API_PORT=127.0.0.1:8001 FRONTEND_PORT=127.0.0.1:8091 SCHEDULE_API=http://api:8000 SETTINGS_FILE=/data/settings.json ``` Порты 8001/8091 выбраны, чтобы не пересечься с продом (8000/8090). `ADMIN_PATH` — секретный путь страницы админки: его нужно знать, чтобы попасть в панель; на сайте ссылки на него нет. ## 3. Запуск ```bash cd /opt/schedule-dev sudo docker compose up -d --build sudo docker compose ps ``` Настройки админки лежат в томе `schedule-dev_schedule_data` и переживают пересборку; посмотреть можно так: ```bash sudo docker run --rm -v schedule-dev_schedule_data:/data alpine cat /data/settings.json ``` ## 4. nginx и сертификат ```bash sudo cp /opt/schedule-dev/deploy/nginx-dev.conf /etc/nginx/sites-available/dev.schedule.our-place.ru sudo ln -sf /etc/nginx/sites-available/dev.schedule.our-place.ru /etc/nginx/sites-enabled/dev.schedule.our-place.ru sudo nginx -t && sudo systemctl reload nginx sudo certbot --nginx -d dev.schedule.our-place.ru ``` ## 5. Проверка ```bash curl -sI https://dev.schedule.our-place.ru/ | head -3 # 200 curl -s -o /dev/null -w '%{http_code}\n' https://dev.schedule.our-place.ru/api/admin/state # 401 (нужен вход) ``` Дальше — открыть `https://dev.schedule.our-place.ru/` в браузере, войти логином/паролем из `.env` и проверить: смена ссылки, интервал, «Обновить сейчас». ## Обновление стенда ```bash cd /opt/schedule-dev && git pull && sudo docker compose up -d --build ```