如果您寻找 Kubernetes 版本:请查看 Kube Active Proxy
Rancher Active Proxy简介
Rancher Active Proxy 是一个针对 Rancher 的一体化反向代理解决方案,开箱即用支持 Let's Encrypt!
该代理基于出色的 jwilder/nginx-proxy 设计理念。
Rancher Active Proxy 替换 docker-gen 为 Rancher-gen-rap adi90x/rancher-gen-rap(janeczku/go-rancher-gen 的分支,添加了额外的功能)。
它使用标签而非环境变量来配置。
建议使用 DockerHub 上的最新镜像,或使用特定版本标签。请注意,分支通常包含开发特性,可能不完全稳定。
使用目录轻松设置
将 https://github.com/adi90x/rancher-active-proxy.git
添加到您的自定义目录列表中(在 Rancher 中进入管理 > 设置)。
然后从目录安装 Rancher Active Proxy!
使用方法
运行所需的最小参数:
docker run -d -p 80:80 adi90x/rancher-active-proxy
随后启动需要被代理的容器,并加上标签 rap.host=subdomain.youdomain.com
docker run -l rap.host=foo.bar.com ...
被代理的容器必须通过 Dockerfile 中的 EXPOSE
指令或使用 docker run
或 docker create
的 --expose
参数公开要被代理的端口。
确保您的 DNS 已配置,使得 foo.bar.com 转发至运行 rancher-active-proxy
的主机上,请求会被路由到具有相应 rap.host
标签的容器。
被代理容器可用标签概览
标签 | 描述 |
---|---|
rap.host |
要使用的虚拟主机名(多个值可以用逗号分隔) |
rap.port |
容器使用的端口号(如果公开了多个端口时需要)。默认为暴露的第一个端口或80 |
rap.proto |
连接到容器所用的协议(http, https, uwsgi)。默认:http |
rap.timeout |
从此容器读取的超时时间(秒)。默认:Nginx 默认值(60秒) |
rap.cert_name |
虚拟主机对应的证书名称。默认与 rap.host 相同 |
rap.https_method |
Https 处理方式(redirect, noredirect, nohttps)。默认:redirect |
rap.le_host |
使用 Let's Encrypt 创建/续订的证书 |
rap.le_email |
Let's Encrypt 注册邮箱 |
rap.le_test |
设置为 true 使用 Let's Encrypt 的测试服务器 |
rap.le_bypass |
设置为 true 创建特殊旁路以使用 LE |
rap.http_listen_ports |
Rancher-Active-Proxy 监听 http 请求的外部端口。默认:80 |
rap.https_listen_ports |
Rancher-Active-Proxy 监听 https 请求的外部端口。默认:443 |
rap.server_tokens |
允许按容器指定 server_token 值 |
rap.client_max_body_size |
允许按容器指定 client_max_body_size 指令 |
rap.rap_name |
若指定,则仅发布标签值匹配 RAP_NAME 的服务 |
Rancher Active Proxy 可用环境变量概览
环境变量 | 描述 |
---|---|
DEBUG |
设置为 true 以启用更多输出信息。默认:false |
CRON |
定义证书续订的 cron 表达式。默认:0 2 * * * |