Size: a a a

2020 March 12

ŹR

Źmićer Rubinštejn in ErlangRus
Sys.config многовато на себя берет
источник

M

Mark in ErlangRus
Simon
у кого есть опыт зворачивания ерланга в докер
подскажите, если ли альтернатива подкладыванию sys.config для каждого образа докера  ?
т.к. это вариант ну совсем НЕ удобный
Если ты используешь rebar3 или relx для сборки релизов, то там можно использовать sys_config_src, который воткнет нужное из переменных окружения.

http://blog.erlware.org/otp-21-new-sys_config_src-option-in-relx/
https://www.rebar3.org/docs/releases#section-dynamic-configuration
источник

S

Simon in ErlangRus
гуд, тоже интересный вариант
источник

ŹR

Źmićer Rubinštejn in ErlangRus
Ну там порт можно через env пробросить. Но какую нибудь настройку логгера на 10 экранов можно и впечатать в сборку
источник

ML

Maksim Lapshin in ErlangRus
так бардак с тем, что в sys.config перемешиваются настройки с подгонкой системы.

Т.е. sys.config вообще мало пригоден для разнесения девелоперов и эксплуатации
источник

A

Andrey in ErlangRus
а sys-dev.config не вариант?
источник

S

Simon in ErlangRus
Yuri Zhloba
Кажется, в докере правильным путем является передача конфигурации через переменные окружения, а не через конфиг.
так и есть,
я могу настроить свое приложение на ENV
а вот что делать с приложениями, которые не я писал, а они берут настройки из sys.config
источник

DZ

Danil Zagoskin in ErlangRus
Simon
так и есть,
я могу настроить свое приложение на ENV
а вот что делать с приложениями, которые не я писал, а они берут настройки из sys.config
application:load
application:set_env
application:start
источник

S

Simon in ErlangRus
т.е. я убираю стороннее приложение из автозапуска

и запускаю его вручную при старте своего
источник

AK

Aleksey Kluchnikov in ErlangRus
как было сказано выше юзай sys.config.src
https://www.rebar3.org/docs/releases
Dynamic Configuration
источник

AK

Aleksey Kluchnikov in ErlangRus
Переменные применяются на момент запуска приложения, не компиляции
источник

AK

Aleksey Kluchnikov in ErlangRus
Это вот кстати к вчерашнему разговору а ребаре с человеческим литцом
источник

YZ

Yuri Zhloba in ErlangRus
Źmićer Rubinštejn
Ну там порт можно через env пробросить. Но какую нибудь настройку логгера на 10 экранов можно и впечатать в сборку
Настройки логера не меняются на разных машинах. Что не меняется, то в sys.config, что меняется, то в окружение.
источник

YZ

Yuri Zhloba in ErlangRus
В моих проектах, logger - - это единственное, что конфигурируется через sys.config. Все остальное другими средствами.
источник

СИ

Сергей Иванов in ErlangRus
Simon
т.е. я убираю стороннее приложение из автозапуска

и запускаю его вручную при старте своего
нифига не понял что тебе требуется. если нужно заменить конфиги по-умолчанию, то используй параметры —config и —args_file.
тапа такого:
erl  -args_file /path/to/vm.args -config /path/to/vm.config
источник

YZ

Yuri Zhloba in ErlangRus
В одном месте cuttlefish остался по историческим причинам. В другом месте ini-файлы.
источник

YZ

Yuri Zhloba in ErlangRus
Но у меня докера нет на проде.
источник

AK

Aleksey Kluchnikov in ErlangRus
Yuri Zhloba
В моих проектах, logger - - это единственное, что конфигурируется через sys.config. Все остальное другими средствами.
У меня путь до конф файла
источник

YZ

Yuri Zhloba in ErlangRus
Докер только на машинах разработчиков, и там упаковано окружение для проекта (бд, рабит, моки и дт)
источник

S

Simon in ErlangRus
попробую настроить через sys.config.src
а там видно будет оно это или нет
источник