Перейти к основному содержимому

Работа в режиме Self Hosted

Требования

  • Получить токен доступа в Docker Hub от нашей поддержки
  • Ubuntu >= 20.04
  • Docker Engine
  • Docker Compose
  • Свободные порты 80, 443
  • Минимальные характеристики сервера: 4 ядра ЦП, 8 ГБ ОЗУ, SSD, 50 ГБ свободного места.
  • На IP-адрес сервера должно быть спроксировано/перенаправлено доменное имя и поддомены, указанные в переменных окружения, на сервер, на котором будет развернута система (или все поддомены через wildcard DNS).
  • У вас есть активный SMTP сервер для отправки писем

Рекомендации

  • Всю кодовую базу, которую вы будете использовать для установки (конфигурационные файлы, переменные окружения, и т.д.) рекомендуется хранить в приватном репозитории. Это позволит вам быстро восстановить работоспособность системы в случае сбоя и упростит процесс обновления за счет контроля версий.
  • По возможности вынесите базы данных (PostgreSQL и Keycloak) и хранилище файлов (MinIO) на отдельные сервера. Это позволит вам масштабировать систему в будущем и уменьшит риск потери данных в случае сбоя.
  • MinIO можно заменить на любое другое хранилище файлов, поддерживаемое S3 API.
  • Секреты, такие как пароли, ключи и т.д., рекомендуется генерировать длинной не менее 8 символов для логинов и 32 символов для паролей.
  • Ниже предоставленные инструкции несут рекомендательный характер и могут быть изменены в зависимости от вашей инфраструктуры или требований.

Установка

  1. Авторизуйтесь в Docker Hub командой c помощью токена, который вы получили от нашей поддержки:

    docker login --username delovoytech
  2. Создайте конфигурацию Docker Compose – docker-compose.yml в корне вашего проекта и добавьте в него следующий код – 📎 docker-compose.yml

  3. Создайте файл переменных окружения .env в корне вашего проекта и добавьте в него следующий код – 📎 .env

  4. Заполните переменные окружения в файле .env, в которых отсутствуют значения.

    Внимание

    Все переменные окружения, указанные в файле .env, обязательны для заполнения. Переменная не считается заполненной, если в ней отсутствует значение или значение пустое.

    Примеры:

    • BASE_HOST="example.com" Верно
    • BASE_HOST=example.com Верно
    • BASE_HOST= Неверно
    • BASE_HOST Неверно
    осторожно

    Выше приведен пример файла .env и в нем логины, пароли и другие выставлены по умолчанию. Не забудьте их изменить.

  5. Запустите команду в корне вашего проекта:

    docker compose up -d
    подсказка

    Если во время выполнения команды возникнет ошибка по типу error while interpolating ...: required variable VARIABLE is missing a value - значит в файле .env отсутствует значение переменной VARIABLE, вернитесь к пункту 4.

После успешного выполнения команды, ваше приложение будет доступно по адресу доменного имени, указанного в переменной окружения BASE_HOST.

Импорт лицензии

Пред-условие: У вас установлено приложение и внутри создано ваше пространство.

  1. Перейдите в профиль компании в приложении.
  2. Скопируйте UUID вашего пространства.
  3. Передайте UUID вашего пространства нашей поддержке.
  4. Получите ключ лицензии от нашей поддержки.
  5. Перейдите в раздел "Лицензия".
  6. Нажмите на кнопку "Импорт".
  7. Вставьте вашу лицензию в поле ввода и нажмите кнопку "Импортировать".
  8. После успешного импорта лицензии, вы увидите сообщение об успешном импорте и информацию о лицензии.

Обновление

  1. Обновите конфигурацию Docker Compose, если это требуется.

  2. Обновите файл переменных окружения, если это требуется.

  3. Заменить значение переменной VERSION на новую версию.

    осторожно

    Понижать версию при обновлении нельзя.

  4. Перезапустите проект командой:

    docker-compose up --detach