我试图在Docker中设置Graylog集群,而不创建自定义映像。
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