Перейти к содержимому

Обновление сервера

Версии сервера выходят релизами на GitHub — тогда, когда их выпускают вручную. В каждом релизе лежат готовые файлы под Linux (amd64 и arm64) и checksums.txt с их хешами. Тем же путём сервер ставит установщик, поэтому обновление ничем не отличается от первой установки — меняется только один файл.

Посмотреть, есть ли новая версия

Окно терминала
laminara-server version # что установлено сейчас
laminara-server update --check # что лежит в релизах

Раз в сутки сервер смотрит релизы сам и пишет в лог, когда выходит версия свежее:

вышла новая версия сервера версия=1.2.0 установлена=1.1.0 поставить=laminara-server update

Поставить

Окно терминала
sudo laminara-server update
sudo systemctl restart laminara-server

Команда скачивает файл под вашу систему, сверяет его хеш с checksums.txt из релиза и спрашивает у скачанного файла его версию — если он представляется не тем, чем обещал релиз, обновление отменяется и на диске ничего не меняется. Прежний файл остаётся рядом как laminara-server.old, так что откатиться можно вручную одной командой mv.

Обновление меняет права на файл, поэтому запускать его нужно от того пользователя, которому файл принадлежит. Если сервер лежит в /usr/local/bin, это sudo.

Настройки

{
"update": {
"check": true,
"install": false,
"repo": "laminara/laminara",
"interval": "24h"
}
}
ПолеЧто делает
checkСмотреть релизы раз в interval и писать в лог, если вышла версия свежее. По умолчанию включено.
installСтавить новую версию самому и перезапускаться. По умолчанию выключено.
repoРепозиторий на GitHub в виде «владелец/имя».
intervalКак часто смотреть релизы.

Выключенный check означает, что сервер не ходит на GitHub вовсе — ни одного запроса без вашей команды. Те же поля правятся в консоли: settings, раздел «Обновление сервера».