Skip to content

Docker-compose HA

Необходимо для работы

Установка

  1. Создайте в корне папку /sboard
shell
mkdir "/sboard"
  1. Создайте в новой папке файл docker-compose.yml
shell
nano docker-compose.yml
  1. Добавьте в docker-compose.yml следующее:
yml
version: "3.3"
services:
  sboard:
    image: "${DOCKER_REGISTRY}/sboard:${DOCKER_IMAGE_TAG}"
    restart: "always"
    ports:
      - 80:80
      - 443:443
    volumes:
      - "./certs:/certs"
    environment:
      DOMAIN_NAME: "${DOMAIN_NAME}"
      POSTGRES_URL: "${POSTGRES_URL}"
      REDIS_HOST: "${REDIS_HOST}"
      REDIS_PORT: "${REDIS_PORT}"
      REDIS_PASS: "${REDIS_PASS}"
      S3_BUCKET: "${S3_BUCKET}"
      S3_ACCESS_KEY_ID: "${S3_ACCESS_KEY_ID}"
      S3_SECRET_ACCESS_KEY: "${S3_SECRET_ACCESS_KEY}"
      S3_ENDPOINT: "${S3_ENDPOINT}"
  1. Создайте файл .env в папке с docker-compose.yml и укажите в нём переменные окружения. Пример:
shell
DOCKER_REGISTRY=cr.yandex/crpqnc9iiqap7fs19jhl
DOCKER_IMAGE_TAG=latest

DOMAIN_NAME=sboard.mycompany.com # домен, на котором будет работать Эсборд в вашем контуре
POSTGRES_URL=postgresql://user:password@host:5432/db # url подключения к базе данных postgresql, содержит в себе root user, пароль и хост базы
REDIS_HOST=redis # хост для базы данных redis
REDIS_PORT=6379 # порт для базы данных redis
REDIS_PASS=pass # пароль для базы данных redis
S3_BUCKET=example-bucket # название бакета в s3 storage
S3_ACCESS_KEY_ID=access_key_id # айди ключа доступа к s3 storage
S3_SECRET_ACCESS_KEY=secret_access_key # ключ доступа к s3 storage
S3_ENDPOINT=https://storage.s3.com # url для s3 storage
  1. Авторизуйтесь в Docker registry (запросите ключ авторизации key.json у вашего менеджера)
shell
cat key.json | docker login \
--username json_key \
--password-stdin \
cr.yandex
  1. Подтяните образы с Docker registry
shell
docker-compose -f docker-compose.yml pull

Подсказка

Все процедуры, связанные с вызовом docker-compose, следует выполнять в папке с файлом docker-compose.yml

  1. Создайте папку /sboard/certs
shell
mkdir /sboard/certs
  1. Положите актуальные SSL сертификат и ключ в папку /sboard/certs

Уточнение

Названия файлов должны быть вида:

Сертификат - public.crt
Ключ - private.key

  1. Запустите docker-compose
shell
docker-compose -f docker-compose.yml up -d --force-recreate

Настройка за reverse proxy

Инструкция

Настройка SSO

Инструкция