[英]How to link docker containers?
我试过链接我的docker容器,但似乎在访问时出错。
我的结构如下:
um-mysql
cz-um-app
cz-um-frontend
后端与数据库docker的链接完成如下,它完美地工作:
$ docker run -p 8080:8080 --name backendservices --link um-mysql:um-mysql cz-um-app
前端与后端的链接如下:
$ docker run -p 80:80 --name frontend --link backendservices:backendservices cz-um-frontend
但是,前端与后端的链接不起作用。
我有一个登录页面,在提交时,它访问一个URL http://backendservices:8080/MyApp
在控制台中,它显示错误为:
net::ERR_NAME_NOT_RESOLVED
不确定为什么后端容器与数据库的链接工作正常,而前端与后端的情况不同。 我需要在Nginx中为此配置一些设置吗?
hosts条目如下,我也可以ping后端服务:
首先,您不需要为backendservices
映射8080:8080: backendservices
映像中的任何EXPOSE
d端口都可以被链接到它的任何其他容器看到。 无需主机端口映射。
其次,如果后端已注册,您可以检查前端:
docker exec -it frontend bash
cat /etc/hosts
如果不是,请检查docker docker ps -a
以查看后端是否仍然运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.