Test ITTest IT
  • Руководство системного администратора
  • Руководство пользователя
  • Загрузить Test IT Enterprise
  • GitHub
  • Руководство по работе с Личным кабинетом
  • Руководство пользователя
  • Личный кабинет Test IT Cloud
  • GitHub
  • Release notes: Test IT Enterprise
  • Release notes: Test IT Cloud
  • Новое в документации
  • Центр помощи
  • Видеокурс по Test IT
  • Часто задаваемые вопросы
  • Спросите нас в Telegram
      
    
  • Руководство системного администратора
  • Руководство пользователя
  • Загрузить Test IT Enterprise
  • GitHub
  • Руководство по работе с Личным кабинетом
  • Руководство пользователя
  • Личный кабинет Test IT Cloud
  • GitHub
  • Release notes: Test IT Enterprise
  • Release notes: Test IT Cloud
  • Новое в документации
  • Центр помощи
  • Видеокурс по Test IT
  • Часто задаваемые вопросы
  • Спросите нас в Telegram
  • Установка

    • Установка в Docker Compose
      • Описание .env-файла
    • Установка в Kubernetes
      • Значения, используемые в файле "values"
  • Настройка внешних подключений и повышение их безопасности

    • О настройке внешних подключений
    • Настройка внешних подключений в Docker Compose

      • Подключение RabbitMQ в Docker Compose
      • Подключение стека Elasticsearch, Logstash и Kibana (ELK) в Docker Compose
      • Подключение MinIO в Docker Compose
        • Настройка безопасного соединения
      • Подключение Redis в Docker Compose
      • Подключение InfluxDB в Docker Compose
      • Подключение PostgreSQL в Docker Compose
    • Настройка внешних подключений в Kubernetes

      • Подключение RabbitMQ в Kubernetes
      • Подключение MinIO в Kubernetes
      • Подключение Redis в Kubernetes
      • Подключение InfluxDB в Kubernetes
      • Подключение PostgreSQL в Kubernetes
    • Описание микросервисов Test IT
  • Настройка внешних ссылок для перехода из Test IT
  • Перезапуск системы

    • Перезапуск системы в Docker Compose
    • Перезапуск системы в Kubernetes
  • Работа с компонентами Kubernetes

    • Изменение выделенных ресурсов в Kubernetes
    • Замена рабочего узла (ноды) в Kubernetes
    • Настройка SSL для внутренних подключений в Kubernetes
    • Добавление самоподписанных сертификатов в контейнеры (Kubernetes)
    • Переход на новый кластер Kubernetes
    • Перезапуск подов и остановка компонентов Test IT в Kubernetes
    • Переопределение переменных и настроек приложений в Kubernetes
  • Обновление

    • Обновление в Docker Compose

      • Обновление Test IT в Docker Compose
      • Структура файла docker-compose.yml в версии 4.5
    • Обновление в Kubernetes

      • Обновление в Test IT в Kubernetes
      • Обновление старых версий Test IT в Kubernetes
  • Переход из Docker в Kubernetes

    • Переход из Docker в Kubernetes: Test IT 5.3 и более поздние версии
    • Переход из Docker в Kubernetes: Test IT 5.2 и более ранние версии
  • Проверка лицензии

    • Проверка лицензии в Docker Compose
    • Проверка лицензии в Kubernetes
  • Резервное копирование

    • Резервное копирование в Docker Compose
    • Резервное копирование в Kubernetes: Test IT 5.3 и более поздние версии
    • Резервное копирование в Kubernetes: Test IT 5.2 и более ранние версии
  • Логирование пользовательских действий (Docker Compose)
  • Настройка HTTPS

    • Настройка HTTPS в Docker Compose
    • Настройка HTTPS в Kubernetes
  • Добавление самоподписанных сертификатов в контейнеры (Docker Compose)
  • Удаление системы

    • Удаление Test IT в Docker Compose
    • Удаление Test IT в Kubernetes

Подключение MinIO в Docker Compose

Важно

  • Версия внешнего сервиса должна совпадать с версией, указанной в файле docker-compose.yml.
  • В качестве примера в этой инструкции используется проект с именем testit. Вы можете использовать другое название.

Вы можете использовать одну базу данных для сервисов minio и avatars.minio.

  1. Создайте два бакета. Например, bucket1 на замену сервису minio и bucket2 на замену сервису avatars.minio.

  2. Для каждого из бакетов создайте пару Access Key и Secret Key.

  3. В .env-файле:

    • Для сервиса minio установите следующие значения переменных:

      AWS_ACCESS_KEY: (Access key, установленный для bucket1)
      AWS_SECRET_KEY: (Secret Key, установленный для bucket1)
      AWS_CONNECTION_STRING: http://external-server:9000 (где external-server — ip-адрес или DNS-имя вашего сервера с minio)
      FILE_BUCKET_NAME: (в данном примере, bucket1)
      
    • Для сервиса avatars.minio установите следующие значения переменных:

      AVATARS_AWS_ACCESS_KEY: (Access key, установленный для bucket2)
      AVATARS_AWS_SECRET_KEY: (Secret Key, установленный для bucket2)
      AVATARS_AWS_CONNECTION_STRING: http://external-server:9000
      
    • Добавьте для сервиса avatars.minio следующую переменную:

      AVATARS_FILE_BUCKET_NAME: (в данном примере, bucket2)
      
  4. В файле docker-compose.yml закомментируйте секцию с сервисом minio, зависимости от него других контейнеров (все упоминания сервиса в блоках depends_on), и его вольюмы (minio-export-volume и minio-data-volume) в списке volumes.

  5. Перезапустите систему Test IT:

    docker compose -f docker-compose.yml --project-name testit up --detach --timeout 120 --remove-orphans
    

Настройка безопасного соединения

  1. Подготовьте файлы сертификатов — корневой ca.crt, а также подписанные с помощью него сертификат и ключ сервера server.crt и server.key. CN сертификата сервера должен быть minio.

  2. Скопируйте файлы server.crt и server.key для minio в вольюм:

    server_certs=$(docker inspect yourproject_minio-tls-volume --format '{{ .Mountpoint }}')
    cp server-minio.crt ${server_certs}/public.crt
    cp server-minio.key ${server_certs}/private.key
    

    При копировании файлы сертификатов переименовываются в public.crt и private.key соответственно, так как minio ожидает такие файлы в соответствии с документацией. :::

  3. Скопируйте файл сертификата CA, с помощью которого были выписаны сертификаты серверов, в вольюм trusted-certificates-volume:

    trusted_certs=$(docker inspect yourproject_trusted-certificates-volume --format '{{ .Mountpoint }}')
    cp ca.crt ${trusted_certs}/
    
  4. Измените значение переменной для подключения к minio в файле .env для использования HTTPS:

    AWS_CONNECTION_STRING=https://minio:9000
    
  5. Для того, чтобы изменения вступили в силу, перезапустите сервис minio, а затем примените изменения в файле .env с помощью docker compose:

    docker restart yourproject_minio_1
    docker compose -f docker-compose.yml --project-name testit up --detach --timeout 120
    

    Сервисы webapi и avatars.api также будут перезапущены с новой конфигурацией для подключения к minio по HTTPS.

Обновлено:
Назад
Подключение стека Elasticsearch, Logstash и Kibana (ELK) в Docker Compose
Далее
Подключение Redis в Docker Compose