我将Nginx容器用于此配置:
var database = require(__dirname + '/components/database.js');
var db = database({});
这是必需的,因为在启动nginx时,“ ui”容器不一定会启动。这样可以避免“在上游找不到主机...”错误。
但是现在即使ui容器已启动并正在运行,我也得到404(它们都在docker-compose.yml中定义的同一网络中)。当我通过不带变量,不带解析器的代理传递并首先启动ui容器时,一切正常。
现在我正在寻找为什么docker无法解决它的原因。我是否可以手动将虚假路由添加到http://ui,当用户界面容器启动时该路由会被替换?那会在哪里?还是可以修复解析器?
答案 0 :(得分:0)
首先,您需要确保端口在EXPOSE 9000
的ui后端Dockerfile中。然后,您将需要使用它作为配置:
http {
upstream ui {
server ui:9000;
}
server {
# whatever port your nginx reverse proxy is listening on.
listen 80;
location / {
proxy_pass http://ui/backend;
}
}
答案 1 :(得分:0)