Я работаю над запуском контейнеров Consul на докере с Marathon, и я столкнулся с несколько субъективной проблемой создания файлов JSON.Generating -bind параметр в файлах Consul JSON для использования с Marathon
В настоящее время я планирую запустить контейнеры с JSON файлами этого формата
сервер 1.json
{
"id": "consul-server-2",
"cmd": "consul agent -server -client=0.0.0.0 -ui -bind=100.10.30.40 -retry-join=server-1.local -data-dir=/tmp/consul",
"cpus": 1,
"mem": 512.0,
"instances": 1,
"container": {
"type": "DOCKER",
"docker": {
"image": "consul:latest",
"name": "dev-consul",
"network": "HOST"
}
},
"constraints": [
[
"hostname",
"CLUSTER",
"server-1.local"
]
]
}
мне нужно, чтобы быть в состоянии изменить -bind адреса для каждого файла JSON и Я планировал использовать heredocs с BASH, но я не уверен, есть ли более эффективные методы в отношении удобства обслуживания для создания файлов такого типа.
В идеале я хотел бы иметь поле в консуле или марафоне, которое могло бы автоматически дать мне IP-адрес определенного порта для подачи на -bind, но поскольку у меня есть несколько частных IP-адресов, мне кажется, что мне нужно настроить его вручную.