【发布时间】:2020-05-11 14:35:35
【问题描述】:
我习惯使用telepresence 连接到我的集群并在本地访问集群服务。
现在,我需要将集群中的服务提供给在本地 docker 容器中运行的一组应用程序。我们可以说这是逆用例。
我有一个在 docker 容器中运行的应用程序。它访问使用docker-compose 部署的服务。它已通过使用网络完成:
docker network create myNetwork
// Make app 1 to use it
docker network connect myNetwork app1
// App 2 uses docker compose, so myNetwork is defined in it and here I just:
docker-compose up
我的app1 可以正确访问在app2 中运行的容器/服务。但是,我仍然需要它来访问集群中的服务!
我尝试使用telepresence 建立从我的主机到集群的隧道,然后尝试访问该服务,就像它在我的主机中一样。但是,它似乎不起作用。如果我进入我的app1 容器并执行curl 以查看服务名称是否解析:
curl: (6) 无法解析主机:my_cluster_service_name
我的方法错了吗?我错过了一项操作或考虑吗?我怎么能做到呢?
Docker 版本:Docker version 19.03.8 for Mac
【问题讨论】:
标签: macos docker networking kubernetes docker-compose