LC на платформе Docker разворачивается на предварительно установленном Docker. При запуске инсталлятора он получает передаваемые параметры и пытается найти необходимые ему для дальнейшей инсталляции обязательные пути, файлы, а также проверяет наличие версий LC, установленных предыдущим инсталлятором, и выполняет импорт настроек приложения.
Подключаемся к серверу через ssh протокол.
Переходим в аккаунт root с помощью команды
sudo su
Затем скачиваем дистрибутив Логин Центра через терминал, если предоставлена прямая ссылка на nextcloud optimacros то с помощью команды:
wget <direct_link>/download -O ИМЯ_ФАЙЛА.С_РАСШИРЕНИЕМ
В случае, если на сервере уже установлен воркспейс, то необходимо завершить его работу. Предварительно открыв файл manifest.json, чтобы убедиться, что мы находимся на нужном сервере.
Переходим в директории с файлом, как правило, это /om/workspace1
и выполняем команду cat manifest.json
После того как мы удостоверились что находимся на нужном сервере (например TEST или PROD). Завершаем работу воркспейса.
Далее нам необходимо установить на сервере docker. Устанавливаем его, следуя инструкции c официального сайта, для соответсвующей Операционной Системы, согласно инструкции по предварительной установке:
Предварительные установки ПО необходимые для работы логин центра
https://docs.docker.com/engine/install/#server
Версия docker не имеет принципиального значения (в отличие от версии vagrant необходимой для Воркспейса), устанавливаем самую актуальную на момент установки.
Установка Docker в системе РЭД ОС имеет нюансы.
Смотрите подробнее...
Далее мы подготавливаем необходимые директории на сервере под Логин Центр
Внимание, для установки ЛЦ на один сервер с воркспейсом шаги будут отличаться, необходимо ознакомиться с
инструкцией по совместной установке
далее по тексту рассматривается инструкция по отдельной установке ЛЦ
Для этого переходим в папку om с помощью команды:
cd /om
и создаём там необходимые директории login-center с помощью команды:
mkdir -p login-center/data/nginx/cert
Далее нам необходимо заполнить manifest или .env файл в зависимости от версии ЛЦ, которую устанавливаем.
Для версий ниже 1.34.0 (f-1.000.0.0) заполняем .env файл. Пример заполнения:
vim /om/login-center/.env
Для версий выше 1.34.0 (f-1.000.0.0) заполняем manifest.yml файл. Пример заполнения:
vim /om/login-center/manifest.yml
Описание полей manifest.yml файла
Для поля пароля базы данных (mongo.dbPassword), с помощью любого генератора паролей, сгенерируйте надёжный пароль длиной не более 20 символов.
Важно: пароль не должен содержать символов @:;/% - это приведет к багу установки.
Также необходимо сгенерировать пароли для полей секции nats - password и systemPassword. Их длина должна быть не менее 22 символов.
Поле publicHostname в секции main должно быть заполнено значением доменного имени сервера, где будет работать LC вместо "defaulthost.com".
После подготовки манифеста или env файла, нам необходимо положить ssl-сертификаты в директорию /om/login-center/data/nginx/cert
, Файлы должны называться bundle.crt и crt.key соответственно. Если у вас уже есть заранее подготовленные сертификаты, переименовываем их и помещяем в нужную директорию, например:
mv /home/username/company-certificate.crt /om/login-center/data/nginx/cert/bundle.crt
mv /home/username/company-certificate-key.key /om/login-center/data/nginx/cert/crt.key
Либо можно сгенерировать самоподписные сертификаты:
cd /om/login-center/data/nginx/cert/
openssl req -newkey rsa:2048 -nodes -keyout crt.key -x509 -days 1095 -out bundle.crt
Отвечаем на вопросы, которые задаст программа генерации
Теперь когда мы подготовили директорию для установки Логин Центра, манифест или env, сертификаты, и скачали дистрибутив, нам необходимо будет установить его. Для этого переходим в директорию со скачанным ранее дистрибутивом, например, с помощью команды:
cd /home/username
Выдаём файлу права с помощью команды
chmod +x login-center-версия.sh
В зависимости от версии ЛЦ, имя инсталлятора может отличаться, например:
installer-f-1.100.0.0.sh или login-center-1.12.sh
Запускаем инсталлятор с помощью команды
./login-center-версия.sh
Во время установки инсталлятор запросит путь для установки у пользователя интерактивно. По умолчанию путь для установки /opt/om/login-center, мы меняем на ту, которую мы подготовили (/om/login-center
).
На версиях старее чем 1.34.0 (f-1.000.0.0) Во время установки будет задан вопрос: нужно ли перезаписывать env файл. Конечно же отвечаем НЕТ. Ожидаем окончания процесса установки.
процесс установки в зависимости от версии будет выглядеть подобным образом:
Затем увидим вот такую консоль, это значит что Логин Центр успешно установлен:
или
Можно проверять результат установки в браузере введя имя хоста нашего логин центра.
Для автоматизированной установки LC необходимо, чтобы на сервере, где производится установка уже была папка, где будет установлен LC.
В папке установки должна присутствовать вложенная папка data/nginx/cert, в которой должны быть файлы сертификатов bundle.crt и crt.key.
В папке установки должен находиться файл манифеста manifest.yml с заполненными полями.
Сам инсталлятор следует запускать с передачей ему параметров платформы и пути для установки:
./installer.версия.sh -- -p docker -d путь_установки
При этих условиях инсталлятор распакует Docker образы и запустит LC автоматически, не прерываясь и не задавая вопросов.
Инсталлятор выдаёт ошибку со следующим содержимым:
Это говорит о том, что по заданным путям отсутствуют файлы сертификатов. Затем мы переходим в директорию, где лежит Логин Центр
Необходимо выполнить шаги описанные выше по добавлению сертификатов
Инсталлятор выдаёт ошибку со следующим содержимым:
Значит необходимо заполнить файл manifest.yml следуя шаблону, который описан выше.