Обновление Пассворка
Docker
11мин
онлайн обновление проверка прав пользователя и запуск скрипта если обновление выполняется не от имени 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 скрипт состоит из следующих этапов проверки наличия утилит unzip , curl и jq импорта переменных из файла env проверки переменной $cert получения последней доступной версии пассворка проверка архива с помощью цифровой подписи создания резервной копии базы данных и конфигурационных файлов загрузки и обновления обработки ошибок з авершение работы скрипта перед обновлением пассворка, скрипт создает резервную копию базы данных в директории /backup/mongo xxxx xx xx xx\ xx\ xx dump и копию конфигурационных файлов в корневой директории /conf 20240201 xxxxxx tar gz офлайн обновление проверка прав пользователя если обновление выполняется не от имени root — необходимо убедиться, что пользователь состоит в группе docker проверить нахождение пользователя в группе docker можно следующей командой id $user | grep docker если пользователь не принадлежит группе, добавить его через команду sudo usermod a g docker $user загрузка обновления и запуск скрипта перейти на клиентский портал и получить последнюю доступную версию пассворка с цифровой подписью для проверки цифровой подписи также нужен публичный ключ пассворка public key , способы получения вручную открыть url ; скопировать всё содержимое; вставить в файл и сохранить содержимое с именем — public key автоматически (curl или wget) curl curl o public key https //passwork ru/public key wget wget o public key https //passwork ru/public key переместите полученные файлы на сервер с пассворком в корневое расположение docker сборки powershell /\<passwork>/passwork xxxxxx zip /\<passwork>/xxxxxx sig /\<passwork>/public key запустить скрипт для обновления powershell cd /\<passwork>/ /offline update sh skip по умолчанию скрипт проверяет цифровую подпись архива с помощью предоставленного открытого ключа если подпись недействительна или отсутствует, обновление будет прервано если вы доверяете источнику архива, проверку подписи можно пропустить powershell /offline update sh skip скрипт состоит из следующих этапов импорта переменных из файла env определения режима обновления если архив с версией найден, устанавливается режим «zip» если директория с версией найдена, устанавливается режим «directory» создания резервной копии базы данных и конфигурационных файлов проверки наличия утилиты unzip при обнаружении архива zip проверка архива с помощью цифровой подписи распаковки содержимого архива, либо копирование содержимого директории в каталог «www» выбора метода обновления и выполнения обработки ошибок завершение работы скрипта перед обновлением пассворка, скрипт создаст резервную копию базы данных в директории /backup/mongo xxxx xx xx xx\ xx\ xx dump и копию конфигурационных файлов в корневой директории /conf 20240201 xxxxxx tar gz