Возможно ли связать консул, подключить апстрим к другому интерфейсу, кроме 127.0.0.1
loopback?
Consul Connect - Nomad В этой статье говорится, что вы можете запустить прокси-сервер connect в официальном контейнере Docker, но возникает проблема, из-за которой не могут быть отображены вышестоящие зависимости.Запустив версию raw_exec
, я вижу, что апстрим доступен на хост-машине 127.0.0.1.Но если я запускаю ту же конфигурацию внутри контейнера, другие контейнеры не могут подключиться к этим портам.
Пример конфигурации:
task "proxy" {
driver = "docker"
config {
image = "consul:1.4.0"
force_pull = true
network_mode = "host"
args = [
"connect", "proxy",
"-service", "api",
"-log-level", "debug",
"-upstream", "upstream:${NOMAD_PORT_tcp}"
]
}
env {
"CONSUL_HTTP_ADDR" = "${NOMAD_IP_tcp}:8500"
}
resources {
network {
port "tcp" {}
}
}
}
В этой конфигурации служба, называемая восходящей, доступна только в том случае, если выsh
в сам контейнер и проверьте с помощью netcat
.Есть ли способ заставить Consul Connect связать вышестоящую службу с 0.0.0.0
, чтобы ее можно было открыть в локальной сети Docker?