【发布时间】:2020-11-19 15:22:01
【问题描述】:
目录结构:
myapp
-- frontend
---- docker
------ frontend
-------- nginx
-------- nginx.conf
docker-compose.yml
docker-compose.yml: https://pastebin.com/THxMf0xM (移至 pastebin 以避免烦人的“主要是代码”错误)
default.conf:
server {
listen 80;
server_name localhost;
root /var/www/html;
location / {
proxy_pass http://vue:8081;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
为什么我会得到connect() failed (111: Connection refused) while connecting to upstream?
【问题讨论】:
-
当你的服务没有在容器内运行时会出现这个错误,检查服务日志,在这种情况下是 nginx
-
vue服务运行良好。我可以在浏览器中访问 vue 服务。但是,当我在浏览器中访问 nginx 服务时,会出现错误
-
好的,要检查的另一件事可能是端口映射是否到位是 vue 在 8081 上运行,您是否以 http 访问浏览器,即在端口 80 上?
-
正如我所说,vue 应用在 localhost:8081 上运行良好。但在这种情况下,nginx 不知何故无法将 vue 应用程序提供给基于 DOCKER_FRONTEND_PORT 变量的给定端口。我给了变量 3300
-
查看您的代码,我可以看到您正在将 8081 映射到 8080,那不应该是 80,因为 nginx 正在侦听端口 80 吗?
标签: docker nginx docker-compose devops