我正在尝试为我的项目设置开发环境。在Docker中使用主机网络和其他网络撰写
我有一个容器应该放在他自己的网络(“服务”在我的情况),和一个容器(apigateway)应该访问该网络,同时暴露一个HTTP端口到主机的网络。
理想的情况下我的搬运工撰写的文件应该是这样的:
version: '2'
services:
ms1:
expose:
- "13010"
networks:
services:
aliases:
- ms1
apigateway:
networks:
services:
aliases:
- api
network_mode: "host"
networks:
services:
泊坞窗,撰写不允许在同一时间使用network_mode和网络。
我还有其他的选择吗?
目前我使用的是这样的:
apigateway:
networks:
services:
aliases:
- api
ports:
- "127.0.0.1:10000:13010"
然后apigateway容器上0.0.0.0:13010监听。它可以工作,但速度很慢,如果主机的互联网连接断开,它会冻结。
另外,我正计划在码头工人未来使用流浪者,它是否允许以一种干净的方式解决?
你能直接使用一个IP地址ms1吗?请参阅https:// stackoverflow。com/questions/27937185/assign-static-ip-to-docker-container如何用docker做到这一点1.10.1 –
我试图做同样的事情,但要解决一个不同的问题(也许)。在我的情况下,我创建了两个服务之间共享的网络,但由于某种原因,其中一个服务未连接到互联网(我认为原因不是主机网络的一部分)。但是,问题在于它无法解析URL,因为无法访问DNS。我做了一个使用IP地址的quickfix,但会彻底查看它以将请求转发给正确的DNS。 – omrsin