对 docker 容器使用 nginx 反向代理

     2023-03-04     147

关键词:

【中文标题】对 docker 容器使用 nginx 反向代理【英文标题】:using nginx reverse proxy for docker container 【发布时间】:2020-09-10 09:10:08 【问题描述】:

我在我的 ubuntu 机器上使用 nginx,并使用 docker 和一个没有 docker 的 wordpress 网站设置了 2 个 laravel 应用程序

应用1:本地主机:8088 应用 2:本地主机:8089

我想要实现的是,当有人打开 localhost 时它会打开 wordpress 网站,如果有人打开 localhost/app1 它会打开应用程序 1,依此类推。

所以我创建了反向代理,以便它可以打开我的 docker 容器应用程序 这就是我所做的

    sudo nano /etc/nginx/sites-available/website ln -s /etc/nginx/sites-available/website /etc/nginx/sites-enabled/ nginx -t systemctl 重启 nginx

这样做之后,当我尝试打开 localhost/app1 时它显示 404 但它识别出它是一个 laravel 应用程序但显示 404

这是我的 /etc/nginx/sites-available/website 文件代码

server

    listen 80;
    server_name localhost;
    root /var/www/html/wordpress;

    location /app1/
        proxy_pass http://localhost:8088;
    


【问题讨论】:

【参考方案1】:

您可以在应用程序的 nginx 文件夹中创建一个名为 redirects.map 的文件并添加如下映射

~^localhost/app1/(.*) localhost:8089/$1;

【讨论】:

也请尝试这种方法 - 打开 /etc/hosts 文件并添加一个条目,如 ------------ 127.0.1.1:8089 localhost/app1【参考方案2】:

你应该从

更改 nginx 配置
server

   listen 80;
   server_name localhost;
   root /var/www/html/wordpress;

   location /app1/
       proxy_pass http://localhost:8088;
   


server

    listen 80;
    server_name localhost;
    root /var/www/html/wordpress;

    location /app1 
        proxy_pass http://localhost:8088;
    


【讨论】:

带有动态容器的 Nginx 反向代理

...发布时间】:2019-01-1222:31:52【问题描述】:我有一个使用dockercompose设置的带有nginx的反向代理。当我与docker-composeup一起运行所有服务时,它可以正常工作。但是,我希望能够运行单个容器,并独立于代理容器启动(docker-composeupser... 查看详情

使用 nginx 反向代理的 Docker 容器内的闪亮服务器不会遵循 301 重定向

】使用nginx反向代理的Docker容器内的闪亮服务器不会遵循301重定向【英文标题】:ShinyserverinsideDockercontainerreverseproxiedwithnginxwillnotfollow301redirects【发布时间】:2016-10-1319:43:23【问题描述】:这个问题有3个要素:Docker容器:我有一... 查看详情

docker中的nginx反向代理

】docker中的nginx反向代理【英文标题】:nginxreverseproxyindocker【发布时间】:2018-10-1009:13:10【问题描述】:我在使用nginx时遇到了一个小问题。首先,我只是将nginx和portainer作为容器运行。Portainer在端口9000上运行,并且容器位于同... 查看详情

仅使用 Nginx 反向代理启用 Docker 端口访问

】仅使用Nginx反向代理启用Docker端口访问【英文标题】:EnableDockerportaccessonlywithNginxreverseproxy【发布时间】:2021-05-1304:52:08【问题描述】:我在Centos7上运行的8081端口上有一个Docker容器,还有一个带有Nginx的反向代理。我的域安装... 查看详情

NGINX 反向代理到运行 Web 应用程序的 docker 容器

】NGINX反向代理到运行Web应用程序的docker容器【英文标题】:NGINXreverseproxytodockercontainerrunningwebapp【发布时间】:2018-02-2215:17:21【问题描述】:在主机上,我在端口4012上有docker容器,而在docker容器中,webapp在端口3000(0.0.0.0:4012->... 查看详情

docker安装nginx并配置反向代理

参考技术A获取nginx官方镜像 dockerpullnginx查看镜像库dockerimages使用nginx镜像来创建nginx容器实例dockerrun--namenginx-test-p80:80-dnginxrun创建容器实例--name容器命名-v映射目录-d设置容器后台运行-p本机端口映射将容器的80端口映射到本机... 查看详情

Nginx 与 docker:反向代理不起作用

】Nginx与docker:反向代理不起作用【英文标题】:Nginxwithdocker:ReverseProxydoesn\'twork【发布时间】:2020-06-2316:47:00【问题描述】:我最近想设置一个反向代理服务器。我拉了一个nginxdocker映像,并使用以下命令运行了docker容器:dockerr... 查看详情

为docker创建自动化nginx反向代理

...、负载均衡、请求路由、缓存、压缩,甚至A/B测试。当用docker容器运行web服务时,运行一个反向代理可以简化部署。docker容器被分配随机的IP和端口,这使得从客户端的角度来定位这些容器比较困难。默认地,这些IP和端口是私... 查看详情

使用 Docker 并希望 HTTP 到 HTTPS 使用 NGINX 反向代理到 HTTP Grafana

】使用Docker并希望HTTP到HTTPS使用NGINX反向代理到HTTPGrafana【英文标题】:UsingDockerandwantingHTTPtoHTTPSusingNGINXreverseproxytoHTTPGrafana【发布时间】:2020-12-3004:29:50【问题描述】:我正在使用Docker,并为NGINX和Grafana提供单独的容器。我试图... 查看详情

docker中的Nginx,fastapi和streamlit - 反向代理不适用于streamlit

】docker中的Nginx,fastapi和streamlit-反向代理不适用于streamlit【英文标题】:Nginx,fastapiandstreamlitindocker-reverseproxydoesnotworkforstreamlit【发布时间】:2021-12-2623:31:20【问题描述】:我想使用docker将nginx、fastapi和2个流式应用程序容器化。... 查看详情

dockernginx反向代理

...,与后面网关的代理做一个对比,因为我使用的docker安装的Nginx,与直接部署Nginx不太一样正好记录下遇到的问题,希望可以帮助到学习的同学。废话不多说直接上案例。环境准备:mac、docker、spring-boot(两个微... 查看详情

如何在 docker env 中使用 nginx 反向代理通信 UI 和后端应用程序

】如何在dockerenv中使用nginx反向代理通信UI和后端应用程序【英文标题】:HowtocommunicateUIandbackendapplicationusingngnixreverseproxyindockerenv【发布时间】:2020-09-2612:27:00【问题描述】:我有一个UI应用程序(Angular应用程序)和一个后端应... 查看详情

gitlab docker nginx 反向代理到子路径

】gitlabdockernginx反向代理到子路径【英文标题】:gitlabdockernginxreverseproxytoasubpath【发布时间】:2019-04-1621:32:24【问题描述】:我正在尝试将nginx设置为反向代理,以将apps.mycompany.com/gitlab路由到与nginx在同一服务器上运行的gitlabdocke... 查看详情

nginx反向代理docker容器进行域名解析绑定的实现方法

参考技术A可以把多个域名映射到同一个IP地址上docker镜像名称由REPOSITORY和TAG组成[REPOSITORY[:TAG]],TAG默认为latest在宿主机创建持久化conf--配置目录html--静态网站目录logs--日志目录cert--存放证书目录将容器内的nginx.conf与default.conf文... 查看详情

从开发机器上 Service Fabric 上的 Docker 容器访问反向代理

】从开发机器上ServiceFabric上的Docker容器访问反向代理【英文标题】:AccessReverseProxyfromDockercontaineronServiceFabricondevmachine【发布时间】:2019-01-3102:14:18【问题描述】:我正在尝试使用反向代理在ServiceFabric中的服务Docker容器之间进行... 查看详情

docker反向代理中的nginx + vault

】docker反向代理中的nginx+vault【英文标题】:nginx+vaultindockerreverseproxy【发布时间】:2020-03-0806:39:25【问题描述】:我需要将nginx配置为在docker中运行的某些应用程序的反向代理。Portainer运行良好,但HashiCorpVault仍然存在问题。进... 查看详情

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

】使用NGINX作为反向代理的docker-compose不起作用:/【英文标题】:docker-composewithNGINXasreverseproxydoesnotworks:/【发布时间】:2020-07-2917:15:37【问题描述】:我正在尝试通过docker-compose将NGINX网络服务器设置为反向代理,但我无法让它运... 查看详情

如何使用多个节点应用程序设置 nginx 反向代理

...pp1和https://localhost:8080/app2)。这两个应用程序都在单独的docker容器中运行, 查看详情