gpt4 book ai didi

docker - 如何链接docker容器?

转载 作者:行者123 更新时间:2023-12-01 14:06:48 24 4
gpt4 key购买 nike

我已经尝试链接我的 docker 容器,但它似乎在访问时出错。

我的结构如下:

  1. 数据库 docker(Mysql) - 容器名称是 um-mysql
  2. 后端 docker(Tomcat) - 图像名称是 cz-um-app
  3. 前端 docker(Nginx) - 图像名称是 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 中配置一些设置?

主机条目如下,我也可以 ping 后端服务:

enter image description here

最佳答案

首先,您不需要为 backendservices 映射 8080:8080: any EXPOSEd backendservices 图像中的端口对于链接到它的任何其他容器都是可见的。无需主机端口映射。

其次,如果后端已经注册,你可以检查你的前端:

docker exec -it frontend bash
cat /etc/hosts

如果不是,请检查 docker ps -a 以查看后端是否仍在运行。

关于docker - 如何链接docker容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34264349/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com