Обновить ArchMap до новой версии
Примечание
Новые версии ArchMap выходят с тегами вида v1.2.3. Миграции базы при обновлении применяются сами. Миграции ArchMap только добавляют новое, поэтому прежняя версия обычно продолжает работать и с обновлённой базой. Перед обновлением сделайте резервную копию базы (см. Сделать резервную копию и восстановить базу).
Обновить Docker Compose#
Чтобы обновить ArchMap, установленный через Docker Compose, выполните следующие действия:
-
Сделайте копию базы (см. Сделать копию базы).
-
В папке с файлом
compose.yamlполучите новую версию исходного кода:git pull -
Пересоберите и перезапустите контейнеры:
docker compose up -d --buildПри запуске контейнер сам применит миграции базы.
Обновить в Kubernetes#
Чтобы обновить ArchMap в Kubernetes, выполните следующие действия:
-
Сделайте копию базы (см. Сделать копию базы).
-
Обновите релиз до новой версии чарта, сохранив прежние значения:
helm upgrade archmap oci://ghcr.io/eidunyushkinhse/charts/archmap -n archmap \ --version НОВАЯ_ВЕРСИЯ --reuse-values --waitНовый под сначала применит миграции в init-контейнере, затем сменит старый.
Примечание
Ключ подписи входа сохраняется при обновлении, поэтому пользователям не придётся входить заново.
Примечание
Чтобы вернуть прежнюю версию, выполните helm rollback archmap -n archmap. Если новая версия изменила базу так, что прежняя с ней не работает, сначала восстановите базу из копии.
Обновить на сервере#
Чтобы обновить ArchMap на сервере, выполните следующие действия:
-
Соберите архив поставки новой версии (см. Собрать архив поставки).
-
Перенесите архив и файл
.sha256на сервер, проверьте целостность и распакуйте архив:sha256sum -c archmap-*.tar.gz.sha256 tar -xzf archmap-*.tar.gz && cd archmap-*-linux-x86_64 -
Запустите установщик без параметров:
sudo ./deploy/install.shУстановщик сделает копию базы, применит миграции, переключит
/opt/archmap/currentна новый релиз и перезапустит службу. Настройки и конфигурация nginx при этом не меняются.
Примечание
Если новая версия меняет схему базы, установщик перед миграциями сохраняет копию базы в папку /opt/archmap/backups и хранит пять последних копий. Если копию сделать не удалось (например, нет pg_dump нужной версии), установка остановится до миграций. Если копию вы уже сделали сами, запустите установщик с параметром --no-backup.
Примечание
Если новый релиз в течение минуты не ответил, что готов к работе, установщик сам вернёт прежний релиз и завершится с ошибкой. Сервис продолжит работать на прежнем релизе. Вернуться к прежней версии после удачного обновления можно командой, которую установщик печатает в конце.
Подключить ИИ-агентов на сервере старой версии#
Примечание
Если ArchMap был установлен на сервер до версии с подключением ИИ-агентов по адресу …/mcp, то в конфигурации nginx нет этого адреса, потому что установщик её не переписывает. Агенты не подключатся, а установщик при обновлении выведет предупреждение.
Чтобы открыть адрес /mcp на таком сервере, выполните следующие действия:
-
Откройте файл
/etc/nginx/conf.d/archmap.conf. -
В блок
server { … }рядом сlocation /api/добавьте:location = /mcp { proxy_pass http://archmap_backend; proxy_read_timeout 300s; proxy_buffering off; } location ^~ /.well-known/oauth- { proxy_pass http://archmap_backend; } -
Проверьте конфигурацию и перечитайте её:
sudo nginx -t && sudo systemctl reload nginx
Примечание
Если конфигурацию nginx писал установщик, вместо правки вручную можно запустить его с прежними параметрами --server-name, --tls-cert и --tls-key. Он перепишет конфигурацию целиком, вместе с новыми адресами и заголовками безопасности.