如何使用 Docker compose 定义子网和 IP 地址并将其分配给容器
How do I define and assign Subnet and IP addresses to Containers using Docker compose
我认为我想做的是直截了当的,但是通读 docker 关于网络的撰写文档部分 https://docs.docker.com/compose/networking/ 我找不到有用的信息:(
我想创建 2 个子网(将来可能会更多 - 但现在,让我们创建两个子网)并能够将每个子网的 IP 地址手动分配到我在 [=18] 中指定的容器=]-撰写。
如何做到这一点?
使用此撰写文件,您可以添加任意多个 n/w:-
version: '2'
services:
mysql:
container_name: mysql
image: mysql:latest
ports:
- "3306:3306"
networks:
mgmnt:
ipv4_address: "192.168.80.5"
tomcat:
container_name: tomcat
image: tomcat:latest
ports:
- "8080:8080"
- "8009:8009"
networks:
mgmnt:
ipv4_address: "192.168.80.6"
local:
ipv4_address: "10.10.0.10"
depends_on:
- mysql
networks:
mgmnt:
driver: bridge
ipam:
config:
- subnet: 192.168.0.0/16
gateway: 192.168.0.1
local:
driver: bridge
ipam:
config:
- subnet: 10.10.0.0/16
gateway: 10.10.0.1
我认为我想做的是直截了当的,但是通读 docker 关于网络的撰写文档部分 https://docs.docker.com/compose/networking/ 我找不到有用的信息:(
我想创建 2 个子网(将来可能会更多 - 但现在,让我们创建两个子网)并能够将每个子网的 IP 地址手动分配到我在 [=18] 中指定的容器=]-撰写。
如何做到这一点?
使用此撰写文件,您可以添加任意多个 n/w:-
version: '2'
services:
mysql:
container_name: mysql
image: mysql:latest
ports:
- "3306:3306"
networks:
mgmnt:
ipv4_address: "192.168.80.5"
tomcat:
container_name: tomcat
image: tomcat:latest
ports:
- "8080:8080"
- "8009:8009"
networks:
mgmnt:
ipv4_address: "192.168.80.6"
local:
ipv4_address: "10.10.0.10"
depends_on:
- mysql
networks:
mgmnt:
driver: bridge
ipam:
config:
- subnet: 192.168.0.0/16
gateway: 192.168.0.1
local:
driver: bridge
ipam:
config:
- subnet: 10.10.0.0/16
gateway: 10.10.0.1