Docker容器实现跨物理机通信

目前我们在一台物理机上部署了eureka,admin,gatway三个应用,虽然都能够注册到注册中心,但是admin无法对eureka和gateway进行监控

admin需要通过连接client 来进行信息获取,如果三个docker-compose部署三个应用,那么三个应用容器的ip地址将无法进行通讯,所以需要将他们加入同一个网络

--  docker network create --driver bridge app_net

执行后通过 docker network ls 查看所有网络,docker network inspect app_net查看网络详情

在compose中我们需要申明并加入app_net

version: '3.5'
services:
admin:
image: admin:${IMAGE_VERSION}
hostname: ${HOST_NAME}
networks:
- my-net
deploy:
replicas: 1
restart_policy:
condition: on-failure
environment:
- REGISTRY_URL=${REGISTRY_URL}
ports:
- ${EXPORT_PORT}:9010
volumes:
- ${CONFIG_PATH}:/webapp/admin/config/application.yml

networks:
my-net:
external:
name: app_net

此时,网络互通,但是我们还需在eureka配置中加入eureka.instance.prefer-ip-address=tru

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值