Настройка подключения к Postgres и MongoDB платформы

Инструкция для версии платформы 2.18 и выше.


Начиная с версии 2.21, MongoDB имеет авторизацию.

Чтобы посмотреть логин/пароль необходимо выполнить команды:

ID=$(docker ps | grep visiology.admin | awk '{print $1}')

вывод логина
echo `docker exec -it $ID sh -c "cat secrets/MONGO_AUTH_USER"` 

вывод пароля

echo `docker exec -it $ID sh -c "cat secrets/MONGO_AUTH_PASSWORD"`

Имя базы данных для подключения VisiologyVA.

  1. Перейти в папку с дистрибутивом платформы.
  2. Создать папку entrypoint.d:

    mkdir entrypoint.d
  3. В папке entrypoint.d создать файл setpasswd.sh:

    nano setpasswd.sh


    c содержимым:

    #!/usr/bin/env bash
    
    useradd <user>
    echo "<user>:<password>" | chpasswd -m
    
    1. Где <user> – это пользователь для подключения по SSH, <password> – пароль пользователя.

  4. Дать файлу setpasswd.sh права на выполнение:

    sudo chmod +x *.sh
  5. Отредактировать файл external.yml:

    version: "3.8"
    
    x-deploy: &deploy
      deploy:
        placement:
          max_replicas_per_node: 1
          constraints:
            - "node.labels.platform==true"
    
    services:
      custom_ssh:
        image: panubo/sshd:1.3.0
        ports:
          - mode: host
            protocol: tcp
            published: 2222
            target: 22
        environment:
          - SSH_ENABLE_PASSWORD_AUTH=true
          - SSH_USERS=<user>:1000:1000
          - SSH_ENABLE_ROOT=true
          - GATEWAY_PORTS=true
          - TCP_FORWARDING=true
        volumes:
          - ./entrypoint.d/:/etc/entrypoint.d/
        << : *deploy

    а. Где <user> – это пользователь для подключения по SSH.

  6. Перезапустить платформу:

    sudo ./run.sh --restart
  7. В программе для подключения к базе данных настроить подключение с использованием SSH, где указать ip платформы, логин и пароль из 3 шага.

    1. В настройках SSH-туннеля указать ip-адрес платформы, логин и пароль из 3 шага.

    2. В настройках подключения в поле порт подключения указать порт 2222.

    3. В настройках подключения в поле адреса подключения указать сервер для подключения:

      1. viqube-admin для подключения к базе Postgres от ViQube Admin.

      2. smart-forms-db для подключения к базе Postgres от DataCollection.

      3. mongodb для подключения к базе MongoDB от Dasboard Service.