Как установить имя хоста задачи службы, к которой могут обращаться другие службы в сети в среде? - PullRequest
0 голосов
/ 03 мая 2019

Я пытаюсь настроить кластер Graylog в Docker, не создавая пользовательский образ.

Graylog предоставляет переменную среды GRAYLOG_HTTP_BIND_ADDRESS для предоставления хоста + порта, к которому могут подключаться другие.

Однако у меня нет имени хоста конкретной задачи (поэтому у меня есть несколько реплик).Использование hostname не сработало, поскольку hostname было видно только внутри контейнера, а не при доступе к сети.

Вот одна из моих попыток.

image: graylog/graylog:3.0.1-1
ports:
  - 5044:5044
  - 5555:5555
  - 12201:12201/udp
hostname: graylog-{{.Task.Slot}}
environment:
  # Use this one to set the production Graylog API host
  - "GRAYLOG_HTTP_BIND_ADDRESS=graylog-{{.Task.Slot}}:9000"
  -"GRAYLOG_PASSWORD_SECRET=secret"
  - "GRAYLOG_IS_MASTER=false"
deploy:
  replicas: 2
...