Установка Entaxy в Docker и создание образа
В этом руководстве представлена пошаговая инструкция по установке Entaxy ION в Docker и созданию Docker образа для удобного развертывания Entaxy в контейнеризиванной среде.
Примечание: В инструкции приведены примеры для версии Entaxy ION 1.8.3, убедитесь, что вы используете актуальную версию.
Подготовка и установка Entaxy
-
Скачайте архив Entaxy ION с официального сайта (https://entaxy.ru/download) или по прямой ссылке и распакуйте скачанный архив Entaxy в домашний каталог, используя следующую команду:
wget https://nexus.entaxy.ru/nexus/repository/entaxy-public/ru/entaxy/ion/distribution/entaxy-ion-assembly-compact/1.8.3/entaxy-ion-assembly-compact-1.8.3-binaries.zip unzip entaxy-ion-assembly-compact-1.8.3-binaries.zip
-
Установите Java 11, требующуюся для работы Entaxy ION и укажите переменные среды
JAVA_HOME
иPATH
:sudo mkdir /opt/java11 sudo tar xvf ./axiomjdk-jdk-pro11.0.19+7-linux-amd64.tar.gz --directory /opt/java11/ echo 'export JAVA_HOME=/opt/java11/jdk-pro-11.0.19' >> ~/.bashrc echo 'export PATH=${JAVA_HOME}/bin:${PATH}' >> ~/.bashrc source ~/.bashrc
-
Перейдите в каталог с распакованным Entaxy:
cd ~/entaxy-ion-compact-1.8.3/bin
-
Запустите скрипт Entaxy:
./entaxy
-
После запуска Entaxy и установки всех необходимых модулей, остановите Entaxy выполнив команду:
shutdown
-
Удалите следующие файлы из каталога Entaxy, чтобы обеспечить чистоту и безопасность установки:
rm -f data/cave/repository/repositories.db rm -rf data/cache/bundle9/data/config rm -f instances/instance.properties
Создание образа Entaxy в Docker
-
Создайте файл
Dockerfile
в каталоге/home/user_name/entaxy-ion-compact-1.8.3/temp/
со следующим содержимым:FROM apache/karaf:4.2.9 WORKDIR /home/username/ COPY /entaxy-ion-compact-1.8.3/ /opt/apache-karaf
-
Перейдите в каталог
/home/user_name/
:cd /home/user_name/
-
Запустите создание Docker образа:
docker build -t my_entaxy . -f /home/user_name/entaxy-ion-compact-1.8.3/temp/Dockerfile
-
Убедитесь, что образ был успешно создан:
docker images
-
Запустите контейнер:
docker run -d -p 8101:8101 my_entaxy
-
Теперь можно подключиться к Entaxy с локальной машины по SSH:
ssh -p 8101 karaf@localhost
Если возникнет отказ в подключении с сообщением "Unable to negotiate with 127.0.0.1 port 8101: no matching host key type found. Their offer: ssh-rsa", используйте такой вариант подключения:
ssh -p 8101 -oHostKeyAlgorithms=+ssh-rsa karaf@localhost