Docker Swarm with docker compose 版本 3 主机名下划线问题
Docker Swarm with docker compose version 3 hostname underscore issue
我创建了一个 docker 群并尝试使用覆盖网络以便在该群上部署的 2 个服务之间进行通信。
Docker 由 1 个服务组成的内容如下所示:
version: '3'
services:
web:
container_name: "eureka"
image: eureka
environment:
EUREKA_HOST: eureka
ports:
- 8070:8070
networks:
- net_swarm
networks:
net_swarm:
external:
name: net_swarm
第二个:
version: '3'
services:
web:
image: zuul-service
environment:
EUREKA_HOST: eureka_web
ports:
- 8069:8069
networks:
- net_swarm
networks:
net_swarm:
external:
name: net_swarm
我做了一个 docker deploy --compose-file docker-compose.yml eureka
来创建服务 1,它以服务名称作为 eureka_web 旋转,如上所示,在服务 2 的组合文件中引用为 [=23] =],但是由于此 "eureka_web" 有一个下划线,因此在尝试 运行 第二个文件时不会选择主机。(主要是因为下划线)
我可以以某种方式覆盖服务名称中的下划线还是有其他解决方法?
不要给出容器名称。
这样您的服务名称将充当主机名。
另外带下划线的主机名应该不会造成任何问题。尝试找出真正的根本原因。
编辑:
您的服务名称和主机名称是 web。如果不查看 docker 文件,我就不能说这一行。
environment:
EUREKA_HOST: eureka
我创建了一个 docker 群并尝试使用覆盖网络以便在该群上部署的 2 个服务之间进行通信。 Docker 由 1 个服务组成的内容如下所示:
version: '3'
services:
web:
container_name: "eureka"
image: eureka
environment:
EUREKA_HOST: eureka
ports:
- 8070:8070
networks:
- net_swarm
networks:
net_swarm:
external:
name: net_swarm
第二个:
version: '3'
services:
web:
image: zuul-service
environment:
EUREKA_HOST: eureka_web
ports:
- 8069:8069
networks:
- net_swarm
networks:
net_swarm:
external:
name: net_swarm
我做了一个 docker deploy --compose-file docker-compose.yml eureka
来创建服务 1,它以服务名称作为 eureka_web 旋转,如上所示,在服务 2 的组合文件中引用为 [=23] =],但是由于此 "eureka_web" 有一个下划线,因此在尝试 运行 第二个文件时不会选择主机。(主要是因为下划线)
我可以以某种方式覆盖服务名称中的下划线还是有其他解决方法?
不要给出容器名称。
这样您的服务名称将充当主机名。
另外带下划线的主机名应该不会造成任何问题。尝试找出真正的根本原因。
编辑: 您的服务名称和主机名称是 web。如果不查看 docker 文件,我就不能说这一行。
environment:
EUREKA_HOST: eureka