目前我们在一台物理机上部署了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