库伯奈特斯有一个豆荚的概念,集装箱可以在它们之间共享港口。例如,在同一个容器中,容器可以通过localhost:80访问另一个容器(监听端口80)。
然而,在坞-合成,localhost指的是容器本身。
是否在码头上实现kubernetes网络配置?
本质上,我有一个kubernetes配置,我想要重用在一个坞-合成配置,而不必修改图像。
发布于 2017-08-28 10:25:30
我似乎是通过将network_mode: host添加到我的docker配置中的每个容器中来工作的。
发布于 2017-08-28 10:15:30
是的你可以。运行一个服务,然后可以使用network_mode: service:<nameofservice>。
version: '3'
services:
mainnetwork:
image: alpine
command: tail -f /dev/null
mysql:
image: mysql
network_mode: service:mainnetwork
environment:
- "MYSQL_ROOT_PASSWORD=root"
mysqltest:
image: mysql
command: bash -c "sleep 10 && mysql -uroot -proot -h 127.0.0.1 -e 'CREATE DATABASE tarun;'"
network_mode: service:mainnetwork编辑-1
因此,network_mode可以有以下可能的值
在本例中,我使用了service:mainnetwork,因此需要启动主网络。
此外,这已经在Docker 17.06 ce上进行了测试。所以我想你使用的是新版本
发布于 2017-08-28 10:13:39
使用码头链接机制,您可以将容器连接在一起,然后声明的端口将通过本地主机可用。
https://stackoverflow.com/questions/45916178
复制相似问题