我有一个服务作为全局服务(ELK Metricbeat)部署到我的 Docker Swarm 集群。
我希望每个服务的主机名与正在运行的节点(主机)的主机名相同吗?
换句话说,我如何在 yml 文件中实现相同的结果,例如:
docker run -h `hostname` elastic/metricbeat:5.4.1
这是我的 yml 文件:
metricbeat:
image: elastic/metricbeat:5.4.1
command: metricbeat -e -c /etc/metricbeat/metricbeat.yml -system.hostfs=/hostfs
hostname: '`hostname`'
volumes:
- /proc:/hostfs/proc:ro
- /sys/fs/cgroup:/hostfs/sys/fs/cgroup:ro
- /:/hostfs:ro
- /var/run/docker.sock:/var/run/docker.sock
networks:
- net
user: root
deploy:
mode: global
我努力了:
hostname: '`hostname`'
hostname: '${hostname}'
但没有成功。
有什么解决办法吗?
先感谢您。