Установка системы

Рекомендуемый способ установки Юнидата – c использованием Docker. Официальная документация Docker.

Система при желании может быть установлена вручную. Такой способ установки требует специальных навыков. Пример инструкции по ручной установке см. по ссылке.

Note

Эта страница содержит пример установки через Docker. Для установки необходимо иметь репозиторий с дистрибутивом Юнидата в виде образов Docker.

Подготовка к установке

Подготовка сервера:

  • Обновите существующий список пакетов Ubuntu. Команда: sudo apt update

  • Установите Docker через официальный репозиторий. Документацию см. по ссылке https://docs.docker.com/.

  • Установите Docker Compose (версия выше 1.29).

  • Настройте разрешения для Docker Compose. Пример команды: sudo chmod +x /usr/local/bin/docker-compose

  • Установите Git.

Ссылка на репозиторий:

  • Согласно договору поставки Юнидата получите доступ к репозиторию с дистрибутивом вашего продукта.

  • Альтернативный путь: получите архив с Docker-образами дистрибутива, и создайте собственный репозиторий через локальный Dockerhub. Архив будет содержать .env, который включает теги на компоненты системы, и набор образов для компонентов.

Установка с помощью Docker

Чтобы установить Юнидата MDM:

  1. Убедитесь, что ссылка на репозиторий с дистрибутивом вашего продукта в наличии. О получении ссылки см. выше.

  2. Клонируйте репозиторий из Gitlab или Docker. В команде используйте. Пример команды:

    git clone [your-link-unidata-platform-deploy.git]
    
  3. Перейдите в каталог с кодом. Пример команды:

    cd unidata-platform-deploy
    
  4. Для запуска системы используйте команду:

    docker-compose up -d
    

По умолчанию пользовательский интерфейс доступен для просмотра на localhost:8081.

Логин и пароль по умолчанию: admin/ admin. После первого входа в систему необходимо сменить пароль.

Tip

Ссылка для Юнидата MDM CE: https://hub.docker.com/u/unidatacommunity. Используйте эту ссылку только в случае, если устанавливаете редакцию Community Edition.

Загрузка образа Unidata Docker

  1. Выполните команду docker pull для Unidata Docker. В команде укажите требуемую версию:

    docker pull repo.tddev.ru/unidata-ce/backend:latest
    
  2. Чтобы запустить unidata в контейнере, установите следующие переменные окружения:

    - POSTGRES_ADDRESS: postgres database address
    - POSTGRES_USERNAME: postgres username
    - POSTGRES_PASSWORD: postgres password
    - ELASTICSEARCH_CLUSTER_ADDRESS: elasticsearch address
    - ELASTICSEARCH_CLUSTER_NAME: elasticsearch cluster name
    

Запуск Unidata с помощью Docker Compose

Note

Версия docker-compose должна быть 1.29 или выше

При необходимости используйте docker-compose.yaml для создания собственного образа. В файле .env содержится полный перечень доступных переменных.

  1. Создайте файл docker-compose.yml.

  2. Создайте папку hunspell со словарями:

    version: '2.4'
    
    services:
    
    unidata-postgres:
        image: postgres:12
        environment:
        POSTGRES_USER: postgres
        POSTGRES_PASSWORD: postgres
        ports:
        - "5432:5432"
        networks:
        - unidata
        healthcheck:
        test: ["CMD-SHELL", "pg_isready -U postgres"]
        interval: 10s
        timeout: 1s
        retries: 20
    
    
    unidata-elasticsearch:
        image: docker.elastic.co/elasticsearch/elasticsearch:7.8.0
        environment:
        - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
        - "discovery.type=single-node"
        volumes:
        - ./hunspell:/usr/share/elasticsearch/config/hunspell/
        ulimits:
        memlock:
            soft: -1
            hard: -1
        ports:
        - 9200:9200
        - 9300:9300
        networks:
        - unidata
        healthcheck:
        test: >
            bash -c "curl http://localhost:9200 | grep '\"cluster_name\"'"
        interval: 10s
        timeout: 2s
        retries: 20
    
    unidata:
        image: repo.tddev.ru/unidata-ce/backend:latest
        ports:
        - 9080:8080
        - 5005:5005
        networks:
        - unidata
        environment:
        POSTGRES_ADDRESS: unidata-postgres:5432
        POSTGRES_USERNAME: postgres
        POSTGRES_PASSWORD: postgres
        ELASTICSEARCH_CLUSTER_ADDRESS: unidata-elasticsearch:9300
        ELASTICSEARCH_CLUSTER_NAME: docker-cluster
        depends_on:
        unidata-postgres:
            condition: service_healthy
        unidata-elasticsearch:
            condition: service_healthy
    
    ui:
        image: repo.tddev.ru/unidata-ce/frontend:latest
        ports:
        - 8081:80
        networks:
        - unidata
        links:
        - unidata
    
    networks:
    unidata:
        driver: bridge