docker-app-starter
v0.1.9
Published
Starter for docker app
Downloads
2
Maintainers
Readme
Docker app starter
Информация
Сервер центральной системы конфигурации.
Оглавление
Установка и использование
пример установки: npm install docker-app-starter -g
пример запуска: docker-app-starter -c config.toml
Таблица ключей запуска
Ключ | Описание ------------ | ------------- --version, -v | вывести номер версии приложения --help, -h | вызвать справку по ключам запуска --config, -c | путь к файлу конфигурации в формате toml или json, (переменная среды: DOCKER_APP_STARTER_CONFIG_PATH)
Конфигурация
Программа настраивается через файл конфигурации двух форматов TOML или JSON. Так же можно настраивать через переменные среды, которые будут считаться первичными.
Секции файла конфигурации
- logger - настрока логгера (переменная среды: DOCKER_APP_STARTER_LOGGER)
- app - массив настроек процессов (переменная среды: DOCKER_APP_STARTER_APP)
- app.env - настройка переменных среды для процесса (переменная среды: DOCKER_APP_STARTER_APP_ENV)
Пример файла конфигурации config.toml
[logger] # настройка логгера
mode = "prod" # режим (prod или dev или debug)
enable = true # активация логгера
timestamp = false # выводить время лога (true или false)
type = true # выводить тип лога (true или false)
[[app]] # массив настроек процессов
name = "app" # имя процесса (должно быть уникальным)
cwd = "./" # рабочая папка процесса
command = "/bin/sh" # команда запуска приложения
critical = true # критичность процесса (true или false)
restart = false # перезагрузка при закрытии (игнорируется если critical = true)
restart_interval = 2 # интервал перезагрузки (активируется при ключе restart = true)
[app.env] # настройка переменных среды для процесса
scope = "all" # применяемые пространства (none, app, os, all)
include_regexp = ".*" # regexp для переменных вхождения
[app.env.keys] # переменные пространства "app"
APP_NAME = "app-name"
Настройка через переменные среды
Ключи конфигурации можно задать через переменные среды ОС. Имя переменной среды формируется из двух частей, префикса DOCKER_APP_STARTER_
и имени переменной в верхнем реестре. Если переменная вложена, то это обозначается символом _
. Переменные среды имеют высший приоритет.
пример для переменной logger.mode: DOCKER_APP_STARTER_LOGGER_MODE
Таблица параметров конфигурации
| Параметр | Тип | Значение | Описание | | ----- | ----- | ----- | ----- | | logger.mode | строка | prod | режим отображения prod, dev или debug | | logger.enable | логический | true | активация логгера | | logger.timestamp | логический | false | выводить время лога (true или false) | | logger.type | логический | true | выводить тип лога (true или false) | | app.name | строка | | имя процесса (должно быть уникальным) | | app.cwd | строка | ./ | рабочая папка процесса | | app.command | строка | /bin/sh | команда запуска приложения | | app.critical | логический | true | критичность процесса (true или false) | | app.restart | логический | false | перезагрузка при закрытии (игнорируется если critical = true) | | app.restart_interval | число | 2 | интервал перезагрузки (активируется при ключе restart = true) | | app.env.scope | строка | all | применяемые пространства (none, app, os, all) | | app.env.include_regexp | строка | .* | regexp для переменных вхождения | | app.env.keys | объект | {} | переменные пространства "app" |