service网络默认的模式是bridge,自定义bridge下的子网网络配置。
innet是创建的内网名称,使用的DRIVER是bridge模式,采用ipam配置网络,配置子网的掩码和网关。而service也可以自定义自己的ip。
这样多个微服务是网络通信是通过docker下的子网进行通信,数据包是由宿主机的网络再通过网桥转发到各服务中。
networks:
innet:
ipam:
config:
- subnet: "172.19.0.0/24"
gateway: "172.19.0.1"
services:
nginx:
container_name: nginx_1.18.0
image: nginx:1.18.0
volumes:
- ${DOCKER_HOME}/nginx/config:/etc/nginx/conf.d
- ${DOCKER_HOME}/nginx/logs:/var/log/nginx
- /opt/ui:/opt/ui
ports:
- 80:80
restart: always
networks:
innet:
ipv4_address: 172.19.0.100