Перейти к основному содержимому
Версия: 7.0

Docker

осторожно

Обратите внимание.

Если в Docker сборке отсутствуют скрипты (update.sh и offline_update.sh) обновления Пассворка, то используется старая Docker-сборка, пожалуйста, обратитесь к технической поддержке Пассворка для получения дополнительной инструкции.

Онлайн-обновление

Проверка прав пользователя и запуск скрипта

Если обновление выполняется не от имени root — необходимо убедиться, что пользователь состоит в группе docker.

Проверить нахождение пользователя в группе docker можно следующей командой:

id $USER | grep docker

Если пользователь не принадлежит группе, добавить его через команду:

sudo usermod -a -G docker $USER
к сведению

Скрипт использует curl. Если в вашей сети используется прокси-сервер, необходимо добавить переменные окружения:
export http_proxy=http://proxy.example.com:8080
export https_proxy=http://proxy.example.com:8080

Затем запустить скрипт обновления Пассворка:

./update.sh
Выполняемые действия
  1. Проверка наличия утилит unzip, curl и jq
  2. Импорт переменных из файла .env
  3. Проверка переменной $CERT
  4. Получение последней доступной версии Пассворка
  5. Создание резервной копии базы данных и конфигурационных файлов
  6. Загрузка и обновления
  7. Обработка ошибок

Завершение работы скрипта

Перед обновлением Пассворка, скрипт создает резервную копию базы данных в директории ./backup/mongo-xxxx-xx-xx-xx:xx:xx.dump и копию конфигурационных файлов в корневой директории ./conf-20240201-xxxxxx.tar.gz.

После выполнения скрипта необходимо перезапустить контейнеры passwork_nginx и passwork_php:

docker restart passwork_nginx passwork_php

Офлайн-обновление

Проверка прав пользователя

Если обновление выполняется не от имени root — необходимо убедиться, что пользователь состоит в группе docker.

Проверить нахождение пользователя в группе docker можно следующей командой:

id $USER | grep docker

Если пользователь не принадлежит группе, добавить его через команду:

sudo usermod -a -G docker $USER

Загрузка обновления и запуск скрипта

Перейти на клиентский портал и скачать актуальную версию Пассворка:

Пример получения 6 версии Пассворка

Переместить загруженный архив в корневую директорию установки на сервере и запустите скрипт обновления Пассворка:

./offline_update.sh
к сведению

Скрипт выполняет поиск архива или директории с названием Passwork-*
Если название не соответствует маске, вы увидите ошибку.

Выполняемые действия
  1. Импорт переменных из файла .env
  2. Определение режима обновления:
    1. Если архив с версией найден, устанавливается режим «zip»
    2. Если директория с версией найдена, устанавливается режим «directory»
  3. Создание резервной копии базы данных и конфигурационных файлов
  4. Проверка наличия утилиты Unzip при обнаружении архива .zip
  5. Распаковка содержимого архива, либо копирование содержимого директории в каталог «www»
  6. Выбор метода обновления и выполнение
  7. Обработка ошибок

Завершение работы скрипта

Перед обновлением Пассворка, скрипт создаст резервную копию базы данных в директории ./backup/mongo-xxxx-xx-xx-xx:xx:xx.dump и копию конфигурационных файлов в корневой директории ./conf-20240201-xxxxxx.tar.gz.

После выполнения скрипта необходимо перезапустить контейнеры passwork_nginx и passwork_php:

docker restart passwork_nginx passwork_php