Руководство по установке системы
Общие сведения об используемых технологиях
ORBISmap построен на основе Docker-контейнеров, управляемых с помощью Docker Compose. Также в ОС устанавливается сервис системы автоматического обновления. Данный подход снижает требования к системе и упрощает установку и поддержку.
Программа установки использует интернет-соединение для получения дистрибутива, но может быть вызвана и автономном режиме при наличии всех файлов.
Система автоматического обновления также требует наличие интернет-соединения и в данной версии не может быть запущена в автономном режиме.
Допустима установка нескольких экземпляров приложения на одной машине.
Управление комплексом может осуществляться как через управляющий скрипт, который подготовит программа установки, так и напрямую с помощью команды docker-compose
.
Управляющий скрипт также предоставляет возможность частичного или полного удаления компонентов системы.
Состав дистрибутива
Возможно два варианта поставки системы. Минимальный - для установки при наличии интернет-соединения. Максимальный - для offline-установки.
Минимальный дистрибутив системы состоит из 2х файлов (суммарный размер менее 1 Мб):
orbismap
- исполняемый файл, программа установкиREADME.md
- эта инструкция
Максимальный вариант содержит также другие вспомогательные файлы и архивы образов Docker. Суммарный размер не превышает 4 Гб (возможна запись на 1 DVD диск).
Подготовка операционной системы к установке
Программа установки имеет ряд требований к ОС, которые нужно удовлетворить до начала установки.
sudo
и разрешение на его использованиеdocker
версии не ниже17.03.0-ce
docker-compose
версии не ниже1.12.0
Для того, чтобы убедиться, что система готова к использованию, можно запустить специальную команду проверки:
$> ./orbismap check_system
В случае несоответствия системы требованиям, программа выведет на экран данные об ошибке.
Для установки Docker и Docker Compose следуйте инструкциям в официальной документации.
Для некоторых систем (таких как Ubuntu) возможна автоматическая установка. В этом случае программа установки спросит о согласии.
Для полноценной работы необходимо, чтобы пользователь, от имени которого будет производиться установка ORBISmap был добавлен в группу docker
.
sudo usermod -aG docker `whoami`
Чтобы изменения вступили в силу, рекомендуется перезагрузить сервер.
Установка на ALTLinux 8 Server
Установка системы ORBISmap в системе под управлением ALTLinux имеет определённые особенности и описана здесь.
Проверка работоспособности
Если все прошло хорошо, то после перезагрузки системы следующие команды должны отработать без ошибок и показать сообщение о том, что все работает исправно (требует подключение к интернету):
$> docker run --rm hello-world
$> docker-compose --version
Установка ORBISmap
Для начала установки необходимо запустить файл orbismap
. Для этого нужны права на исполнение. Вызов с параметром help
показывает краткую справку.
$> clear && chmod +x ./orbismap && ./orbismap help
Для запуска приложения можно достаточно вызвать его без параметров:
$> ./orbismap
При этом, если система еще не была установлена - запустится программа установки. Ее также можно запустить отдельно:
$> ./orbismap install
Эта команда установит систему и запустит ее с параметрами по-умолчанию. Если перед первым запуском требуются особые настройки, то можно запустить установку без запуска:
$> ./orbismap setup
При выполнении необходимо указать минимальную информацию о системе. Для дальнейших обновлений она будет сохранена в файл ./distrib/setup.cfg
Если возникли трудности с системными требованиями, следующая команда позволяет проверить их:
$> ./orbismap check_system
Управление ORBISmap
Чтобы запустить или остановить систему, нужно вызвать соответствующую команду:
$> ./orbismap start
$> ./orbismap stop
Можно перезапускать отдельные сервисы системы, например так:
$> ./orbismap restart nginx
Если нужно только применить изменения в конфигурации, можно сделать мягкий перезапуск:
$> ./orbismap reload nginx
Специальная команда позволяет посмотреть логи одного или нескольких сервисов:
$> ./orbismap logs nginx,postgres
Допустимо использовать особые названия для просмотра логов внутренних сервисов (эта возможность будет удалена в будущем):
$> ./orbismap logs cache
$> ./orbismap logs render
Работа с docker-compose.yml напрямую
В ходе работы может потребоваться добавить дополнительные пользовательские сервисы к сервисам ORBISmap Для этого необходимо вручную добавить соотвествующие записи в файл docker-compose.yml При этом есть ряд ограничений, накладываемых системой автоматического обновления ORBISmap:
- Нежелательно использовать инструкцию
build
(если без использования данной инструкции нельзя обойтись - необходимо, чтобы build context находился внутри директории проекта, при этом необходимо удостовериться, что для сервисаservice-manager
в разделеenvironment
выставлена переменнаяCOMPOSE_STRICT_CHECK=0
) - Запрещено использовать пути, начинающиеся с
./
, вместо этого необходимо использовать${PWD}/