您可以在创建应用时通过指定应用的网络将服务添加到自定义的网络中。您可以将服务添加到一个或多个自定义网络中来实现服务间的互相访问。
使用限制
- 将应用添加到某一自定义网络后,您无法更改应用的网络。
- 将应用添加到某一自定义网络后,您无法将应用从该网络中移除。只有在删除应用时,应用才会从该网络中移除。
通过镜像创建应用
[backcolor=transparent]注意:有关如何创建应用的详细信息,参见
创建应用。
设置应用配置时,在 [backcolor=transparent]网络 部分选择自定义网络的名称。下面的示例将应用添加到自定义网络 swarmmode 和 testswarm 中。
通过编排模板创建应用
[backcolor=transparent]注意:有关如何创建应用的详细信息,参见
创建应用。
在编排模板中添加网络的相关信息。下面的示例将应用添加到自定义网络 swarmmode 和 testswarm 中。
[backcolor=transparent]编排模板:
- [backcolor=transparent]version[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]'3.2'
- [backcolor=transparent]services[backcolor=transparent]:
- [backcolor=transparent] test[backcolor=transparent]:
- [backcolor=transparent] image[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]'wordpress:4'
- [backcolor=transparent] deploy[backcolor=transparent]:
- [backcolor=transparent] mode[backcolor=transparent]:[backcolor=transparent] replicated
- [backcolor=transparent] replicas[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]1
- [backcolor=transparent] update_config[backcolor=transparent]:
- [backcolor=transparent] failure_action[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]continue
- [backcolor=transparent] restart_policy[backcolor=transparent]:
- [backcolor=transparent] condition[backcolor=transparent]:[backcolor=transparent] none
- [backcolor=transparent] networks[backcolor=transparent]:
- [backcolor=transparent] [backcolor=transparent]-[backcolor=transparent] swarmmode [backcolor=transparent]#您的自定义网络的名称
- [backcolor=transparent] [backcolor=transparent]-[backcolor=transparent] testswarm [backcolor=transparent]#您的自定义网络的名称
- [backcolor=transparent]networks[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]#声明您的自定义网络
- [backcolor=transparent] swarmmode[backcolor=transparent]:
- [backcolor=transparent] external[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]true
- [backcolor=transparent] testswarm[backcolor=transparent]:[backcolor=transparent]
- [backcolor=transparent] external[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]true
您需要对应用所要使用的自定义网络进行声明,否则部署应用时会报错。其中,external: true 表示自定义网络已创建,创建应用时容器服务不会尝试创建该自定义网络,而是查找该自定义网络并将应用添加至该自定义网络。
[backcolor=transparent]注意:external 不能与其它网络配置参数(driver、driver_opts、ipam、internal)一起使用。