From a375ad330adeb67bf260cc5e9ecf7e2cf6fbefab Mon Sep 17 00:00:00 2001 From: test2 Date: Sat, 6 Jun 2026 22:24:51 +0300 Subject: [PATCH] Add server update instructions for new Git releases Co-authored-by: Cursor --- README.md | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) diff --git a/README.md b/README.md index 5a24794..161197c 100644 --- a/README.md +++ b/README.md @@ -221,6 +221,86 @@ sudo systemctl start docker --- +## Обновление до новой версии на сервере + +Когда выходит новая версия в Git, обновите проект на сервере без потери данных (БД и фото хранятся в Docker volumes, файл `.env` не перезаписывается). + +### Быстрое обновление (последняя версия из `main`) + +```bash +cd ~/fotohost +git pull origin main +docker compose up -d --build +docker compose ps +docker compose logs --tail=50 web +``` + +### Обновление до конкретного релиза (рекомендуется) + +Список доступных версий: + +```bash +cd ~/fotohost +git fetch --tags +git tag -l +``` + +Пример — установить релиз **v1.0-beta**: + +```bash +cd ~/fotohost +git fetch --tags +git checkout v1.0-beta +docker compose up -d --build +docker compose ps +``` + +Вернуться на последнюю dev-версию из `main`: + +```bash +cd ~/fotohost +git checkout main +git pull origin main +docker compose up -d --build +``` + +### Перед обновлением (рекомендуется) + +```bash +cd ~/fotohost + +# Бэкап базы данных +docker compose exec db pg_dump -U photohost photohost > backup_$(date +%Y%m%d_%H%M).sql + +# Проверить, не появились ли новые переменные в .env.example +diff .env .env.example || true +nano .env +``` + +Если в `.env.example` появились новые строки — добавьте их в свой `.env` вручную. + +### После обновления — проверка + +```bash +docker compose ps +curl -I http://127.0.0.1:8080 +docker compose logs --tail=100 web +``` + +Откройте сайт в браузере и проверьте вход, загрузку фото и админку. + +### Если что-то пошло не так — откат на предыдущий тег + +```bash +cd ~/fotohost +git checkout v1.0-beta +docker compose up -d --build +``` + +> **Важно:** команда `docker compose up -d --build` пересобирает контейнер `web`, но **не удаляет** volumes с PostgreSQL и загруженными фото. + +--- + ## Регистрация, авторизация и роли | URL | Описание |