使用 NGINX 作为反向代理的 docker-compose 不起作用:/

Posted

技术标签:

【中文标题】使用 NGINX 作为反向代理的 docker-compose 不起作用:/【英文标题】:docker-compose with NGINX as reverse proxy does not works :/ 【发布时间】:2020-07-29 17:15:37 【问题描述】:

我正在尝试通过 docker-compose 将 nginx 网络服务器设置为反向代理,但我无法让它运行 :(

这是我的 nginx 配置文件:

worker_processes 1;

events  worker_connections 1024; 

http 

    sendfile on;

    upstream docker-frontend-tier-one 
        server fe-tier-one:80;
    

    server 
        listen 8081;

        location / 
            proxy_pass         http://docker-frontend-tier-one;
            proxy_redirect     off;
            proxy_set_header   Host $host;
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header   X-Forwarded-Host $server_name;
        
    

...这是我的撰写文件:

version: '3.7'

services:

  nginx-proxy:
    image: nginx-proxy:latest
    restart: always
    container_name: nginx-proxy
    ports:
      - 8081:8081
    networks:
      - front-tier

  fe-tier-one:
    image: fe-tier-one-image:latest
    restart: always
    container_name: fe-tier-one
    depends_on:
      - nginx-proxy
    expose:
      - "80"
    networks:
      - front-tier

networks:
  front-tier:
    driver: bridge

所以毕竟设置和组合我在输入时看不到东西:http://localhost:8081

fe-tier-one-image 包含一个 Angular 应用程序,该应用程序也通过 docker 在 nginx 网络服务器中运行......我可以直接访问容器,但不能访问 proxy_pass-way

稍后我想通过使用反向代理进行路由添加其他几个前端应用程序。

有什么帮助吗?

【问题讨论】:

【参考方案1】:

这可能不是您问题的直接答案 - 但您可以考虑使用以下 docker 镜像,它也有一个不错的 Web 界面。 https://github.com/jc21/nginx-proxy-manager

【讨论】:

以上是关于使用 NGINX 作为反向代理的 docker-compose 不起作用:/的主要内容,如果未能解决你的问题,请参考以下文章

使用 nginx 作为反向代理运行 Apache Zeppelin

使用 Spring 云网关和 Nginx 作为反向代理的网关超时

如何使用 Nginx 作为 RabbitMQ 的 websocket 功能的反向代理?

使用 nginx 作为反向代理和 keycloak 作为上游服务器的组合失败

使用 NGINX 作为反向代理的 docker-compose 不起作用:/

Nginx 作为虚拟主机和反向代理