前言:
目前同学们对“添加network”大概比较看重,我们都需要知道一些“添加network”的相关资讯。那么小编同时在网摘上收集了一些对于“添加network””的相关资讯,希望朋友们能喜欢,咱们一起来学习一下吧!一般对于集群服务,常常通过docker-compose.yml文档快速编排、部署应用服务。
官网中给出了如下的使用场景和方式:
1. 未显式声明网络环境的docker-compose.yml
例如,在目录test下创建docker-compose.yml,内容如下:
version: '2'services: centos-ssh: image: centos
使用docker-compose up启动容器后,这些容器都会被加入test_default网络中。
使用docker network ls可以查看网络列表,docker network inspect <container id>可以查看对应网络的配置。
2. networks关键字指定自定义网络
例如下面的docker-compose.yml文件,定义了testNet网络,其中,bridge可以替换为host, bridge, overlay等选项中的一种。
version: '2'services: centos-ssh: image: centos networks: - testNetnetworks: testNet: driver: bridge
这里testNet可以见多个,对不同的service进行网络隔离访问。例如:
version: '2'services: a: image: centos networks: - AA b: image: centos networks: - AA - BB c: image: centos networks: - BBnetworks: AA: driver: bridge BB: driver: bridge
其中【a服务】和【c服务】之间只能通过【b服务】来实现通信。
值得注意的是,这里定义了AA和BB两个网络,似乎它们的名字就定义成了AA和BB,但是你使用docker network ls命令并不能找到它们。假如你是在test目录下运行的docker-compose up命令,那么这两个网络应该分别对应test_AA和test_BB。
3. 配置默认网络
version: '2'services: centos-ssh: image: centos networks: - testNetnetworks: default: driver: bridge
4. 使用已存在的网络
version: '2'services: centos-ssh: image: centos networks: - testNetnetworks: default: external: name: test
此种方式需要先行解决创建网络 docker network create test
对应的删除网络 docker network rm test
使用networks的要点在于:
1. 注意自定义网络的方式
2. 注意docker-compose.yml文件的位置与网络默认命名的关系
3. 注意遇到问题尝试几种替代方式去解决
标签: #添加network