多个docker容器作为单个IP上的Web服务器
我在一台机器上有多个码头容器.在每个容器上运行一个进程和一个Web服务器,为进程提供一个API. 我的问题是,当默认端口为80时,如何从浏览器访问API?要能够访问docker容器内的Web服务器,请执行以下操作:
这样我可以从我的电脑终端:
但是如何处理这个多个容器和多个Web服务器? 您可以公开多个端口,例如
或者在API容器的前面放一个代理(nginx,apache,varnish等). 更新: 执行代理的最简单的方法是将其链接到API容器,例如.有apache配置
你可以这样运行你的容器:
这可能有点麻烦,但是如果您需要重新启动api容器,因为代理容器也必须重新启动(链接在docker上相当静态).如果这成为一个问题,您可以查看诸如fig或自动更新的代理配置之类的方法:http://jasonwilder.com/blog/2014/03/25/automated-nginx-reverse-proxy-for-docker/.后面的链接也显示了用nginx代理. 更新二: 在更现代的泊坞台版本中,可以使用user defined network而不是上面显示的链接来克服不推荐链接机制的一些不便. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |