Установка Entaxy в Docker и создание образа

В этом руководстве представлена пошаговая инструкция по установке Entaxy ION в Docker и созданию Docker образа для удобного развертывания Entaxy в контейнеризиванной среде.

Примечание: В инструкции приведены примеры для версии Entaxy ION 1.8.3, убедитесь, что вы используете актуальную версию.

Подготовка и установка Entaxy

  1. Скачайте архив 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
  2. Установите 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
  3. Перейдите в каталог с распакованным Entaxy:

    cd ~/entaxy-ion-compact-1.8.3/bin
  4. Запустите скрипт Entaxy:

    ./entaxy
  5. После запуска Entaxy и установки всех необходимых модулей, остановите Entaxy выполнив команду:

    shutdown
  6. Удалите следующие файлы из каталога Entaxy, чтобы обеспечить чистоту и безопасность установки:

    rm -f data/cave/repository/repositories.db
    rm -rf data/cache/bundle9/data/config
    rm -f instances/instance.properties

Создание образа Entaxy в Docker

  1. Создайте файл 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
  2. Перейдите в каталог /home/user_name/:

    cd /home/user_name/
  3. Запустите создание Docker образа:

    docker build -t my_entaxy . -f /home/user_name/entaxy-ion-compact-1.8.3/temp/Dockerfile
  4. Убедитесь, что образ был успешно создан:

    docker images
  5. Запустите контейнер:

    docker run -d -p 8101:8101 my_entaxy
  6. Теперь можно подключиться к 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