问题标签 [jwilder-nginx-proxy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - 通过 nginx-proxy 没有图像
我正在通过 ansible 设置 VPS 来运行已经在 docker 容器中的 Web 应用程序。该部分已启动并正在运行。继续代理部分,我将jwilder/nginx-proxy
和添加jrcs/letsencrypt-nginx-proxy-companion
到我的剧本中。一般来说,这是有效的。SSL 证书已创建,我可以通过代理访问 Web 应用程序。不幸的是,图像似乎没有通过。我认为我需要将“连接”调整为“保持活动状态”。虽然我还没有弄清楚如何获得那套。有什么建议么?提前致谢。
nginx-proxy 环境变量:
正在使用的泊坞窗图像:
- jwilder/nginx-代理
- jrcs/letsencrypt-nginx-proxy-companion
- 带有应用程序的自定义泊坞窗。
笔记:
- 我已经删除了letsencrypt-nginx-proxy-companion并且图像问题仍然存在。
- 如果我直接访问 Web 应用程序的 docker 上的端口,则图像没有问题。
浏览器响应:
- 苹果浏览器:
- “加载资源失败:网络连接丢失。”
- 错误:“网络连接丢失。”
- 铬合金:
- 状态为“(失败)”。
- 检查响应头,状态为 200。
- 在计时下,连接开始是“停滞的”。
- 火狐:
- 状态为 200,但响应负载为空。
再次感谢您的浏览。
docker - Docker错误转发端口
我有几个域共享一个公共 IP(EC2 实例)。我的设置是这样的:
/home/ubuntu
包含docker-compose.yml
:
这将创建一个名为的网络,该网络ubuntu_default
将允许其他撰写实例加入。该nginx-proxy
图像为这些其他撰写实例创建反向代理,以便您可以访问 example.com 并被路由到相应撰写实例中的相应 UI。
/home/ubuntu/example.com/project-1
包含一个docker-compose.yml
喜欢:
/home/ubuntu/testing.com/project-2
包含一个docker-compose.yml
喜欢:
所以基本上:
- project-1.example.com:80 转发到运行在 :8005 上的 UI
- project-1.example.com:80/api 转发到在 :9005 上运行的 API
- testing.com 转发到运行在 :8000 上的 UI
- testing.com/api 转发到在 :9000 上运行的 API
...只要我一次只运行一个,这一切都可以完美运行。当我启动两个 Compose 实例时,/api url 开始发生冲突。我可以坐在其中一个上反复刷新,有时我会看到 example.com/api 的那个,有时我会看到 testing.com/api 的那个。
我不知道此时发生了什么。也许我所反对的前提从根本上是有缺陷的,但它似乎是 Docker/Compose 的预期用途。我愿意接受其他建议来完成同样的事情。
docker - Nginx 代理上游服务器 Docker Compose - 502 Bad Gateway Connection Refused
我正在尝试使用 Docker Compose 将与我的 Web 应用程序相关的所有内容容器化,包括 Nginx 和 SSL 证书。为此,我使用了来自 JWilder和LetsEncrypt Companion的Nginx 代理映像,但无法让 nginx 代理正常工作,结果是:
Nginx 502 错误网关
[错误] 31160#0: *35 connect() failed (111: Connection denied) while connection to upstream, client: xx.xx.xx.xx, server: domain.com, request: "GET /dev/ HTTP/1.1 ”,上游:“webapp://127.0.0.1:8080”,主机:“domain.com”
这只发生在尝试设置 Nginx 代理和 SSL 证书时,所以我知道这是这些容器中的一个或两个的配置问题。如果有人能发现我哪里出错了,我将非常感激!
以下是有问题的容器:
关键点是:
- Webapp 是我运行 PHP、MySQL 和 Nginx 网络服务器的网络应用程序的来源。webapp 网络服务器公开并侦听端口 8080以提供 PHP 文件。
- Nginx 代理暴露标准端口 443 和 80,并且代理在端口 8080 上传递给 webapp
- LetsEncrypt Companion 生成证书并更新。
Nginx 代理服务器配置:
Webapp 网络服务器配置:
访问http://webapp.localhost:8080时,我可以看到 webapp 网络服务器为该页面提供服务,因此我怀疑我的 Nginx 代理服务器配置有问题。
谢谢阅读。
docker - 如何设置 nginx-proxy 以选择正确的容器而不需要端口号
我试图在 Google Compute VM 上设置 nginx 代理。所以我希望我的域名 (www.example.com) 转到正确的容器。但是由于某种原因,它只有在我将端口号放在地址栏中(www.example.com:3001)时才有效,这完全违背了目的。
谁能让我知道我做错了什么??
nginx-proxy docker-compose.yml
应用程序 docker-compose.yml
public
因此,当我放置 www.example.com:3001 时,上述内容正确地代理了容器。
想法??谢谢!
angular - 由 Nginx 容器思想托管的 Docker Angular 应用程序容器
A计划
- 为每个 Angular 应用程序构建一个 docker 镜像
- 可能在每个角度应用程序的单独容器中独立使用 docker 图像
- 一个 Nginx 容器,将托管所有可插拔容器
所以,第 1 步和第 2 步是直截了当的,但是,使容器可插入 Nginx 的部分对我来说不是很清楚。我的主要计划是将每个应用程序作为单独的服务,这样当我推送更改时,我可以重新启动目标服务,而不是整个平台。
任何想法如何使容器可插入或一些不同的方法?
B计划
要将所有应用程序放入单独的卷中,例如附加到 Nginx 容器的 vol-ngapp1、vol-ngapp2,但是,我将如何执行更新过程?- 我需要重新启动整个容器还是什么?
需要计划 C :) 或其他东西直到 Z :D。
谢谢。
docker - 如何配置 nginx 以将其反向代理到其他容器
我有一个应用程序,它为每个用户( panel.userdomain.com )创建一个具有优化前端的子域。我配置了我的 dns 服务器,但我不知道如何配置 nginx 来映射容器。我解释我的过程
- 注册用户,提交域名,dns服务器(bind9)配置,
- 为前端选择一个模板并对其进行优化
- 创建一个带有域名的 docker 容器
- ******** config nginx ************ NGINX 配置 我想要当客户端类型panel.userdomain.com并来到我的nginx时,将他/他映射到优化的前端容器。
docker - 从 jwilder/nginx-proxy 提供静态文件
我有一个网络应用程序(由 uwsgi 提供的 django),我正在使用 nginx 代理对特定容器的请求。这是我的 default.conf 中的相关片段。
现在我希望从 nginx 而不是 uwsgi 工作人员提供静态文件。
所以基本上我想添加类似的东西:
到容器的自动生成的服务器块。
我相信这应该让 nginx 为 /staticfiles 文件夹中对 web.ubuntu.com/static/* 的所有请求提供服务。
但是由于配置(default.conf)是自动生成的,所以我不知道如何将上述位置动态添加到服务器块中:(
我认为位置块不能在服务器块之外,每台服务器只能有一个服务器块?
所以我不知道如何在那里添加位置块,除非我在 nginx 出现后动态添加到 default.conf 然后重新加载它我猜。
我确实通过了https://github.com/jwilder/nginx-proxy并且我只看到了一个实际更改每个主机和默认位置设置的示例。但是完全没有添加一个新位置。
我已经在 jwilder/nginx-proxy 的问答中发布了这个,但没有得到回复。
如果有办法实现这一点,请帮助我。
docker-compose - 在多镜像、多域 docker-compose.yml 中使用letsencrypt-nginx-proxy-companion
我想为 5 个不同的网站提供服务,每个网站在 dockerhub 上都有自己的 docker 映像,我想用一个 docker-compose.yml 文件为所有网站提供服务。我使用的工具是: - nginx -proxy -letsencrypt-nginx-proxy-companion
我想 1. 使用 docker-compose 和nginx-proxy为所有网站提供服务 - 每个网站都有一个唯一的域名 2. 使用 docker-compose 和letsencrypt-nginx-proxy-companion
我已经成功地使用这个 docker-compose.yml 完成了第 1 步:
当我运行“docker-compose up”时,一切正常,但没有 SSL。
我现在正在尝试完成第 2 步,我的每个网站都给我一个 502 错误。SSL 对它们都没有工作。这是我的 docker-compose.yml 文件的样子:
知道我在第二个 docker-compose.yml 文件中做错了什么(第一个正在工作)。
docker - docker nginx-proxy 与 vhost 未正确路由
我有一个带有 2 个容器的 docker,用于为单个站点和 jwilder/nginx-proxy 提供服务。
但是我只得到了默认的 nginx 页面,所以虚拟主机没有正确路由。
我使用https://www.rent-a-hero.de/wp/2017/06/09/use-j-wilders-nginx-proxy-for-multiple-docker-compose-projects/作为指导让自己开始做这件事,因为我想建立一个代理网络。
每个服务的 nxinx 容器都有一个 vhost 文件,并使用第四个共享 php 容器(两个 nginx 容器中的代码相同)。
/docker-compose.yml
/admin.app.conf:
app.conf 在这个测试阶段基本上是相同的......结果相同
为帮助简化问题而编辑的原始文件(删除的文件基本上只是设置了所需的 nginx-proxy 容器和网络,我已经删除了示例第二个 nginx 容器)
docker - 在 jwilder/nginx-proxy Docker 容器中重写 URL
我正在容器化一些网站。我希望能够迁移一些重写规则以自动www
在请求中附加或删除域名。
如何/在jwilder/nginx-proxy
Docker 容器中的nginx.tmpl或其他地方我可以添加一些简单的重写规则吗?
所有代理容器的一条规则都可以,尽管如果可以为每个容器指定规则会很好。