Docker
Данная инструкция предназначена для одиночной установки Пассворка и не подходит для отказоустойчивого решения
Обновление PHP и Пассворка
Перейти в корневое расположение Docker сборки Пассворка:
- shell
cd /<passwork>/
Получить скрипт миграции Docker окружения и Пассворка:
- shell
wget https://repos.passwork.ru/repository/docker/migration_7.sh
Назначить скрипту права запуска и запустить:
- shell
chmod +x migration_7.sh
Перед запуском скрипта, пожалуйста, убедитесь в следующем.
Пассворк имеет доступ в интернет и использует базу данных в контейнере
Если сервер с Пассворком имеет доступ в интернет и использует базу данных в контейнере (psmdb5), запустите миграцию с следующим аргументом:
- shell
sudo ./migration_7.sh -now
Пассворк расположен в закрытом контуре
Получить следующие .zip архивы и .tar образы контейнеров:
- Код Пассворка формата
Passwork-xxxxxx.zip
из клиентского портала; - Архив Docker Compose сборки;
- Скрипт установки Пассворка;
- Образ контейнера Nginx;
- Образ контейнера PHP;
- Образ контейнера Percona Server for MongoDB;
- Образ контейнера Postfix;
- Образ контейнера Alpine.
На сервере с Пассворком в корневом расположении Docker сборки (./
) создать директорию:
- shell
mkdir ./passwork_images
Переместить полученные архивы и образы на сервер с Docker сборкой и расположить в следующем формате:
- shell
./Passwork-xxxxxx.zip
./passwork_compose_install.sh
./passwork_compose_last.tar.gz
./passwork_images/alpine.tar
./passwork_images/nginx.tar
./passwork_images/php8.3.tar
./passwork_images/postfix.tar
./passwork_images/psmdb7.tar
Пример расположения полученных архивов и образов в Docker сборке:

Запустить миграцию Пассворка с следующими аргументами:
- shell
sudo ./migration_7.sh -now -o
Пассворк имеет доступ в интернет и использует внешнюю базу данных
Запустить миграцию Пассворка с следующими аргументами:
- shell
sudo ./migration_7.sh -now -nodb
Пассворк расположен в закрытом контуре и использует внешнюю базу данных
- Выполнить действия по получению архивов .zip и .tar образов из Сервер Пассворк расположен в закрытом контуре, без получения psmdb7.tar;
- Переместить полученные архивы и образы на сервер с Docker сборкой и расположить в представленном формате выше;
- Запустить миграцию Пассворка с следующими аргументами:
- shell
sudo ./migration_7.sh -now -o -nodb
Выполняемые действия
- Чтение конфигурационного файла config.ini и преобразование параметров в новый формат
- Изменение значения pw в базе данных MongoDB
- Извлечение ключа шифрования и сохранение его в отдельный файл
- Создание резервной копии базы данных с помощью db-backup.sh
- Архивирование файлов окружения в tar.gz
- Остановка контейнеров compose сборки
- Получение и запуск скрипта обновления Docker-сборки и Пассворка
- Получение и запуск обновлённой compose сборки
- Восстановление базы данных Пассворка в новой Docker-сборке
- Выполнение миграции объектов базы данных Пассворка
Процесс выполнения скрипта
Скрипт проверяет выполнение первичной миграции в веб-интерфейсе Пассворка (6.5), преобразует файлы конфигурации и запускает миграцию. В случае возникновения ошибок они будут выведены в консоль:

Так выглядит успешное завершение скрипта:

Если миграция Пассворка выполняется на Astra Linux, пожалуйста, обратитесь к технической поддержке Пассворка для получения дополнительной инструкции.