Docker
Щоб оновити сервер HES для Docker, вам потрібно:
Оновіть усі програми Hideez Client до 3.16.Х.
Вимкніть захист даних на HES.
Оновіть сервер, дотримуючись інструкцій нижче.
Увімкніть захист даних знову (див. крок 2)
Створіть директорію для резервного копіювання
$ sudo mkdir /opt/HES.oldРезервне копіювання бази даних (оптимально для можливого подальшого відновлення):
MySQL Database:
Наступна команда створить копію бази даних (dump) у файлі db.sql у директорії /opt/HES.old (на хості) з контейнера з назвою hes-mysql:
$ cd /opt/HES/
$ sudo sh -c "docker exec hes-mysql /usr/bin/mysqldump -u root --password=password db > /opt/HES.old/db.sql"MS SQL Database:
Наступна команда створить резервну копію бази даних db у файлі db.bak у локальній директорії /opt/HES/mssql/data/:
$ cd /opt/HES/
$ sudo docker exec -it hes-mssql /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "C00ll_Passwrd_here" -Q "BACKUP DATABASE [db] TO DISK = N'/var/opt/mssql/data/db.bak' WITH NOFORMAT, NOINIT, NAME = 'db-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"Замініть "C00ll_Passwrd_here", ввівши свій пароль, який ви вказали у файлі /opt/HES/docker-compose.yml.
Зупинка контейнерів:
$ cd /opt/HES/
$ sudo docker compose down(Оптимально) Збережіть образ HES у файл tar (для можливого подальшого відновлення):
$ sudo docker save -o /opt/HES.old/hes.tar hesRemove image of HES:
$ sudo docker rmi hes --forceЩоб оновити сервер до останньої версії, виконайте команди:
$ sudo docker build . -t hesІ перезапустіть контейнери:
$ sudo docker compose up -dЯкщо щось піде не так, ви можете відновити сервер HES за допомогою таких команд:
Зупинити контейнери:
$ cd /opt/HES/
$ sudo docker compose downВидалити образи HES:
$ sudo docker rmi hes --forceВідновити базу даних
My SQL:
Запустити тільки контейнер MySQL:
$ sudo docker compose up -d hes-mysqlВідновити базу даних MySQL з dump -файлу
$ sudo cat /opt/HES.old/db.sql | sudo docker exec -i hes-mysql /usr/bin/mysql -u root --password=password db
$ sudo docker compose down MS SQL:
Запустіть лише контейнер MS SQL:
$ sudo docker compose up -d hes-mssqlВідновити базу даних MS SQL з bak-файлу:
$ cd /opt/HES/
$ sudo docker exec -it hes-mssql /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "C00ll_Passwrd_here" -Q "RESTORE DATABASE [db] FROM DISK = N'/var/opt/mssql/data/db.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"Замініть "C00ll_Passwrd_here", ввівши свій пароль, який ви вказали у файлі /opt/HES/docker-compose.yml
Відновити старий образ HES з файлу tar:
$ sudo docker load -i /opt/HES.old/hes.tarі початкові контейнери:
$ sudo docker compose up -dПеревіривши, що оновлення пройшло успішно і все працює нормально, ви можете видалити копії бази даних і сервера:
$ sudo rm -rf /opt/HES.oldLast updated