如何设置环境中网络中其他服务可以访问的服务任务的主机名?

时间:2019-05-03 17:32:29

标签: docker docker-swarm

我试图在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

0 个答案:

没有答案