Я пытаюсь настроить кластер 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