# Changelog Все заметные изменения в инфраструктурном репозитории описываются в этом файле. Формат ведется вручную на русском языке. В changelog попадают изменения, которые влияют на состав сервисов, версии Docker images, деплой, backup/restore, переменные окружения, секреты и эксплуатационные правила. ## Будущие изменения Пока нет. ## 2026-09-06 ### Добавлено - Добавлен общий PostgreSQL service `db` на `postgres:16-alpine`. - Добавлен Matrix homeserver `msg` на `matrixdotorg/synapse:v1.160.0`. - Добавлен браузерный Matrix-клиент `msg-web` на `vectorim/element-web:v1.12.27`. - Добавлены шаблоны runtime-конфигов: - `config/synapse/homeserver.yaml.template`; - `config/element/config.json.template`. - Добавлен идемпотентный PostgreSQL init script `ops/postgres/init-services.sh` для создания/обновления service users/databases. - Добавлены Docker secrets для generated runtime-конфигов: - `synapse_homeserver_config`; - `element_config`. ### Изменено - Deploy workflow теперь подготавливает Matrix/Element config secrets из Gitea variables/secrets в шаге `Prepare configs`. - Deploy workflow теперь создает на сервере generated config secrets в `secrets/`, а не хранит отдельную runtime-директорию `config/`. - Deploy workflow теперь перед запуском всего стека поднимает `db` и выполняет PostgreSQL initialization через временный `postgres:16-alpine` контейнер, передавая `ops/postgres/init-services.sh` через SSH stdin. - `.env.example` оставлен только для переменных, которые напрямую использует Compose runtime; Matrix-переменные перенесены в documented Gitea variables. - Обновлены `README.md` и `AGENTS.md` под новые service aliases `db`, `msg` и `msg-web`. ### Конфигурация - Добавлены Gitea variables: - `MATRIX_SERVER_NAME`; - `MATRIX_PUBLIC_BASEURL`; - `ELEMENT_WEB_URL`. - Добавлены Gitea secrets: - `POSTGRES_ADMIN_PASSWORD`; - `SYNAPSE_POSTGRES_PASSWORD`; - `SYNAPSE_REGISTRATION_SHARED_SECRET`. - Добавлены runtime secret files: - `secrets/postgres_admin_password.txt`; - `secrets/synapse_postgres_password.txt`; - `secrets/synapse_homeserver_config.yaml`; - `secrets/element_config.json`. ### Эксплуатация - Для `msg` и `msg-web` нужно настроить proxy hosts в Nginx Proxy Manager: - `matrix.example.com -> http://msg:8008`; - `chat.example.com -> http://msg-web:80`. - `MATRIX_SERVER_NAME` нужно выбрать до первого запуска Matrix homeserver, так как он становится частью Matrix ID пользователей. - Регистрация в Synapse закрыта; пользователей нужно создавать вручную через `register_new_matrix_user`. - Generated config files в `secrets/` считаются sensitive, но должны оставаться читаемыми для Docker Compose file secrets. - В `AGENTS.md` добавлено правило обновлять `CHANGELOG.md` при заметных изменениях инфраструктуры, деплоя, переменных, секретов и эксплуатационных правил. ## 2026-08-23 ### Документация - Добавлен `CHANGELOG.md` с историей заметных изменений по git history с начала репозитория. ## 2026-08-22 ### Изменено - Зафиксирована версия Vaultwarden: `vaultwarden/server:1.37.1` вместо `vaultwarden/server:latest`. - Deploy workflow теперь выполняет `docker compose pull` перед `docker compose up -d --remove-orphans`. - В `README.md` добавлено правило фиксировать версии stateful-сервисов и обновлять их отдельным изменением после просмотра release notes и backup. ### Исправлено - Восстановлена совместимость Vaultwarden с актуальным расширением Bitwarden для браузера. Старый backend `1.36.0` не загружал хранилище в новом расширении. ### Документация - Добавлен `README.md` с описанием сервисов, переменных, секретов, локальных операций, данных, деплоя и правил сопровождения. - Добавлен `AGENTS.md` с инструкциями для AI-агентов и автоматизации в этом репозитории. ## 2026-07-26 ### Добавлено - Добавлены сервисы RustDesk: - `sup-hbbs` для ID/rendezvous server; - `sup-hbbr` для relay server. - Для Nginx Proxy Manager открыты порты RustDesk: `21116/tcp`, `21116/udp`, `21117/tcp`. - Добавлена переменная `RUSTDESK_DOMAIN` в `.env.example` и deploy workflow. ## 2026-07-06 ### Добавлено - Добавлен healthcheck для `git-runner` через endpoint `http://127.0.0.1:9101/healthz`. ## 2026-07-05 ### Изменено - Backup-шаг deploy workflow стал опциональным через Gitea variable `DEPLOY_BACKUP_ENABLED`. - Режим dry-run для деплоя вынесен в Gitea variable `DEPLOY_DRY_RUN_ENABLED`. ## 2026-07-04 ### Добавлено - Deploy workflow переведен на полноценный Gitea Actions процесс: - checkout репозитория; - нормализация имени ref/branch; - настройка SSH-клиента; - создание удаленного `docker-compose-.yml`; - создание `.env` и файлов в `secrets/`; - запуск Compose на сервере; - Telegram-уведомления и отправка deploy log. - Добавлен workflow для проверки Telegram deploy bot. - Добавлен `.env.example` с базовыми переменными окружения. - Добавлен backup `data/` перед деплоем с хранением архивов в `backups/`. ### Изменено - `DEPLOY_DIRECTORY` перенесен из secrets в Gitea variables. - Backup выполняется через `sudo`, чтобы избежать ошибок прав доступа к runtime-данным. - Исправлена передача пароля в `sudo` при backup. - Удален временный demo workflow и неиспользуемый action для экранирования Telegram-сообщений. - Идеи по развитию вынесены из репозитория в wiki. ## 2026-06-16 ### Добавлено - Создан начальный Docker Compose стек: - `prx` на `jc21/nginx-proxy-manager:2.15.1`; - `pwd` на `vaultwarden/server:latest`; - `mon` на `henrygd/beszel`; - `mon-agent` на `henrygd/beszel-agent`; - `cld` на `nextcloud:30.0.6`; - `git` на `docker.gitea.com/gitea:1.26.2`. - Добавлены bind mounts в `data/` для persistent-данных сервисов. - Добавлены Docker secrets для Vaultwarden и Beszel. - Добавлена сеть Compose `vbevdev`. - Добавлен `.gitignore` для локальных данных, секретов, `.env`, `.vscode` и `.DS_Store`. - Добавлен сервис `git-runner` на `gitea/act_runner:latest`. - Добавлен healthcheck для `git` и зависимость `git-runner` от здорового `git`. - Добавлен черновой deploy workflow для Gitea Actions.