
Основные параметры конфигурации задаются в файле .env, который используется при создании контейнеров. Эти переменные автоматически подставляются в docker-compose.yml и передаются как окружение внутрь контейнеров.
Файл .env формируется при установке — автоматически (в случае использования скриптов) или вручную (при ручной установке). Он должен храниться в директории установки (/etc/ringo/ по умолчанию) и содержать актуальные значения:
| Переменная | Описание |
|---|---|
JWT_SECRET_KEY |
Секрет для шифрования JWT (JSON Web Token) |
JWT_EXPIRATION_TIME |
Время жизни JWT токена (например: 24h, 7d) |
DB_PASSWORD |
Пароль для подключения к базе данных PostgreSQL |
DOCUMENTATION_ENABLED |
Включение Swagger-документации (true / false) |
DOCUMENTATION_LOGIN |
Имя пользователя для доступа к Swagger |
DOCUMENTATION_PASSWORD |
Пароль для доступа к Swagger |
STATIC_LOGIN |
Имя пользователя для Basic Auth (для интерфейса загрузки и т.п.) |
STATIC_PASSWORD |
Пароль для Basic Auth |
PUBLIC_URL |
Публичный URL системы (должен начинаться с https://) |
AGENT_SECRET |
Секретный ключ агента (используется при авторизации клиента) |
HOST_DOMAIN |
Доменное имя для выдачи TLS-сертификата (без http:// или https://) |
EMAIL |
Email для Let's Encrypt (используется при выпуске сертификата) |
ADMIN_LOGIN |
Логин администратора системы (по умолчанию: support) |
ADMIN_PASSWORD |
Пароль администратора системы (обязателен) |
Если вы изменили файл
.envпосле установки, необходимо пересоздать контейнеры, чтобы изменения вступили в силу. Простого перезапуска недостаточно — используйтеdocker compose up -d --force-recreate.
После установки Ринго будут запущены следующие Docker-контейнеры:
| Образ | Порты | Название |
|---|---|---|
cr.yandex/crpsam2fr3938ne18jd0/ringo:[тег_версии] |
127.0.0.1:5000 → 5000 | roll-deploy-backend |
postgres:14-alpine |
127.0.0.1:5432 → 5432 | roll-deploy-db |
jrcs/letsencrypt-nginx-proxy-companion:latest |
— | ringo-letsencrypt-1 |
jwilder/nginx-proxy |
80 → 80, 443 → 443 | ringo-nginx-proxy-1 |
Контейнеры Let’s Encrypt и Nginx Proxy являются опциональными — их наличие зависит от выбранного сценария установки.
Дополнительно: Более подробная информация о составе и конфигурации контейнеров находится в файле docker-compose.yml, который по умолчанию размещается по пути: /etc/ringo.
Список основных эндпоинтов сервера Ринго:
| Путь | Назначение |
|---|---|
/ |
Основной интерфейс |
/socket.io/ |
WebSocket-соединение агента |
/agent/bundle |
Скачивание файла агента |
/agent/manifest |
Manifest-файл агента |
/mdm |
Выполнение команд MDM |
/mdm/connect |
Связь устройства с сервером |
/mdm/checkin |
Регистрация устройства (check-in) |
/mdm/enroll |
Профиль регистрации (enroll) |
/mdm/enroll/profile |
OTA-профиль регистрации |
/enroll |
HTML-страница, вызывающая загрузку профиля /mdm/enroll |
/api/v1/auth |
Авторизация на странице регистрации |
/api/v1/self-service |
Доступ к API Ринго из приложения Self Service |
/scep |
Протокол SCEP для получения сертификатов |
/scep-proxy |
Использование Ринго как прокси для внешнего SCEP-сервера |
Ринго поддерживает использование внешней базы данных. Для этого на этапе установки необходимо выполнить следующие действия:
В файле docker-compose.yml, в секции контейнера backend, укажите следующие переменные окружения:
| Переменная | Назначение |
|---|---|
DB_HOST |
Доменное имя внешней базы данных |
DB_PORT |
Порт для подключения |
DB_USERNAME |
Имя пользователя |
DB_PASSWORD |
Пароль пользователя |
DB_DATABASE |
Имя базы данных |
Удалите из файла docker-compose.yml раздел deploydb.
Удалите из секции volumes в docker-compose.yml строку vol-deploy-postgres.
Если пользователь базы данных не является Superuser, добавьте переменную:
MIKRO_ORM_MIGRATIONS_DISABLE_FOREIGN_KEYS: false