Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Section
Column
width45%
Panel
titleНа странице:

Table of Contents


Column


Общие сведения о Docker-образе и контейнере


Образ (Image)Контейнер (Container)
ОписаниеШаблон (шаблонная заготовка), на основе которого создаются контейнерыГотовый экземпляр программного обеспечения, созданный на основе образа
Характеристики

Образ включает в себя:

  • код приложения;
  • библиотеки и зависимости;
  • команды запуска и служебные настройки

Особенности контейнера:

  • изолированность от хост-системы и других контейнеров;
  • использование ресурсов хост-машины (CPU, память, сеть, хранилище);
  • может быть запущен, остановлен, удалён или перезапущен

Установка Docker-сервера

Для установки и запуска Сервера ПК Интеллект X через Docker необходимо:

  1. Установить Docker с помощью официальных руководств:
  2. .
    • Минимальные требования для запуска ПК Интеллект X через Docker на Ubuntu:

      • двухъядерный процессор;
      • 4
  3. Гб
      • ГБ RAM;
      • 200 Гб HDD. 
    • Остальные дистрибутивы:
  4.  
  5. Подключить репозиторий Интеллект X. Для этого необходимо:Установить git и утилиту envsubst с помощью команды:

    Для Debian и Ubuntu:

    Code Block
    sudo apt-get install git gettext binutils

    Для Fedora, RedHat Linux, CentOS:

    Code Block
    dnf install git gettext binutils

    Клонировать репозиторий intellectx.docker.

    Code Block
    git clone https://src.ITV.dev/bitbucket/scm/one/intellectx.docker.git
    Note
    titleВнимание!

    В случае возникновения ошибки "server certificate verification failed", необходимо выполнить в терминале следующую команду:

    Code Block
    export GIT_SSL_NO_VERIFY=1
    Обновить клонированные файлы репозитория:
  6. Перейти в папку intellectx.docker:

    Code Block
    cd /home/%username/intellectx.docker/

    где %username − имя пользователя, под которым будет создан контейнер.

  7. Скачать содержимое git репозитория:

    Code Block
    git pull
    Создать контейнер Интеллект X. Для создания контейнера Интеллект X необходимо:
  8. Скопировать в папку /home/%username/ITV.docker/server/build/ deb-пакеты Интеллект X, DetectorPack и DriverPack.
  9. Перейти в папку intellectx.docker/server.

    Code Block
    cd /home/%username/intellectx.docker/server
  10. Выполнить команду:

    Code Block
    ./intellect-x.sh build

    Начнется сборка контейнера Интеллект X.

  11. Для просмотра списка собранных контейнеров после завершения операции выполнить команду:

    Code Block
    ./intellect-x.sh list

Запуск Сервера ПК Интеллект X через Docker завершен. 

  1. Скачать Docker-образ ПК Интеллект Х с официального сайта компании ITV.
    Note
    titleВнимание!

    Доступна отказоустойчивая (FailOver) сборка Docker-образа ПК Интеллект Х. При необходимости она может быть предоставлена через специалистов технической поддержки компании ITV.

  2. После завершения загрузки перейти в папку со скачанным архивом.
  3. Выполнить команду:
    Code Block
    languagebash
    sudo docker load < intellect-x*.tar.gz
    Note
    languagebash
    titleВнимание!

    В Astra Linux 1.7.6 с последними обновлениями при загрузке Docker-образа может появляться ошибка запуска контейнера. В последних обновлениях системы по умолчанию включён сканер уязвимостей образов, который блокирует загрузку и запуск неподписанных или нестандартных образов.

    Для решения проблемы нужно отключить проверку уязвимостей. Для этого нужно:

    1. Открыть или создать файл /etc/docker/daemon.json.
    2. Добавить строку { "astra-sec-level": 6 } в файл с помощью команды:
      Code Block
      languagebash
      sudo cat << EOF > /etc/docker/daemon.json
      { "astra-sec-level" : 6 }
      EOF
      где значение 6 это отладочный режим. При обнаружении уязвимости в контейнере выводится соответствующее предупреждение, при этом запуск контейнера не блокируется.
    3. Перезапустить Docker.
      Code Block
      languagebash
      sudo systemctl restart docker
  4. Выполнить команду для получения ID Docker-образа:
    Code Block
    languagebash
    sudo docker images
  5. Запустить Docker:
    Code Block
    languagebash
    sudo docker run %IMAGE ID%

Запуск ПК Интеллект X

После установки можно подключиться к Docker-серверу отдельно установленным клиентом ПК Интеллект Х. Для этого нужно при запуске клиента в окне авторизации ввести IP-адрес Docker-сервера, логин и пароль (при первом запуске ПК Интеллект Х ввести логин и пароль root/root). Также можно подключиться к Docker-серверу с помощью Flatpak-пакета (см. Запуск Клиента в виде Flatpak-пакета).

Список полезных команд:

  • Определение IP-адреса, к которому нужно подключиться:
    Code Block
    languagebash
    docker inspect <container id> | grep "IPAddress"
  • Просмотр списка контейнеров и их статуса:

    • Только активные контейнеры:

      Code Block
      languagebash
      docker ps
    • Все контейнеры (активные и остановленные):
      Code Block
      languagebash
      docker ps -a
  • Проверка доступности сервера:
    Code Block
    languagebash
    ping <IP-адрес>
  • Просмотр запущенных процессов:
    Code Block
    languagebash
    docker top <имя контейнера>
  • Запуск контейнера:
    Code Block
    languagebash
    docker start <container_id>
  • Проверка статуса контейнера:
    Code Block
    languagebash
    docker ps
  • Остановка контейнера:
    Code Block
    languagebash
    docker stop <container_id>

Установка и запуск ПК Интеллект X через Docker завершен. 

Дополнительные сведения

Директория внутри контейнера

Внутри контейнера смонтирована директория:

Code Block
languagebash
/var/lib/docker/volumes/<volume_id>

Путь может быть изменён по запросу через специалистов технической поддержки компании ITV. Значение volume_id можно получить с помощью команды:

Code Block
languagebash
docker inspect <container_id>

Сбор пакета поддержки (support) в Docker-контейнере

Для сбора пакета поддержки нужно:

  1. Предварительно узнать ID Docker-контейнера с помощью команды:
    Code Block
    languagebash
    docker ps -a
  2. Получить доступ к терминалу контейнера (контейнер должен быть запущен):
    Code Block
    languagebash
    docker exec -it <container_id> sh
    где <container_id> – ID Docker-контейнера.
  3. Перейти в директорию bin ПК Интеллект Х:
    Code Block
    languagebash
    cd /opt/ITV/IntellectX/bin
  4. Выполнить команду:
    Code Block
    languagebash
    ./start_app support /data
    Это инициирует процесс формирования пакета поддержки, который будет сохранён в каталоге data.
  5. Выйти из терминала с помощью команды:
    Code Block
    languagebash
    exit
  6. Перейти в директорию /var/lib/docker/volumes/<volume_id>/_data, настроенную для обмена файлами между контейнером и хостом. Готовый пакет support будет находиться в этой директории.

Сбор пакета поддержки (support) в Docker-контейнере завершен.

...