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 hes
Remove 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.old
Last updated