比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

2025-06-23 09:48:27 78点赞 758收藏 63评论

新发现的神器!一个端口搞定全部docker反代和单点登录,自带发现容器、导航面板。

大家好,这里是Cherry,喜爱折腾、玩数码,热衷于分享数码玩耍经验~

最近,在github又发现一个好东西——GoDoxy。它是一款轻量级、简单且高性能的 WebUI 反向代理工具。不过这玩意儿没有中文名,根据GoDoxy,我就给取了个「搞东西」的“信雅达"名称,大家权当看个乐儿。

不同于目前主流的反代工具,GoDoxy具有如下几个特点,真的可以说是八项全能!唯一的缺点就是英文界面,不过用上浏览器翻译,那是毫无问题。

项目地址(值得star):github/yusing/godoxy

项目特点:

1.读取docker.sock,并自动发现所有容器入口。

2.通过一个域名,将所有容器反代,支持SSO单点登录。

3.支持多节点部署。

4.支持ACL访问控制,支持国家、时区、IP的访问策略。

5.自动化更新SSL证书。

6.拥有容器状态和流量监控

7.支持HTTP/HTTPS/TCP/UDP反代和端口转换。

8.自动生成容器导航栏。

9.支持X86和ARM架构。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

一、项目部署

1、配置域名

这里先说一下GoDoxy的逻辑,它不同于寻常的反代工具,让我们自定义一个三级域名:端口的形式来访问,它是一套全自动的反代工具,有点类似一个SSO在所有容器前自动加一层代理面板。

互联网通过访问我们设置的GoDoxy域名,来访问所有的容器服务,并且我们只需要透出GoDoxy的一个HTTPS端口,就可以实现所有器的访问,生成的容器域名是容器名.domain.exm:端口

PS.部分容器涉及到URL后缀的,需要手动增加后缀,比如blossom。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

因此,我们需要先创建一个DNS解析,解析到下面两个域名。其中泛域名是用于容器访问使用,而GoDoxy域名是用于WebUI登录。

1️⃣泛域名: *.domain.top

2️⃣GoDoxy域名:godoxy.domain.top ——前缀可改

这里,很多人不喜欢godoxy这个域名前缀,这是可以改的,不过改了以后需要去修改根目录下的.env文件。

首先,下载最新exe格式的压缩包解压,然后把生成的文件夹丢到极空间的个人空间里。建议采用常规的/路径/docker/项目的方式来管理。

打包:

夸克:/s/27fcaa38eb67

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

🔻修改.env文件第72行,这里的参数GODOXY_FRONTEND_ALIASES改成你自己设置的域名前缀即可。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

🔻修改.env文件第52、53行,这里是我改的应用访问端口,也可以根据自己的情况修改。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

接着打开极空间的DDNS服务,根据自己的需要配置对应的DNS解析服务。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

这里以阿里云为例,点击上方蓝字登录阿里云获取Key和Secret,然后在下方增加前面提到的两个域名,保存并更新即可。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

2、配置文件

接着使用极空间的文本编辑器打开目录/godoxy/config/config.yaml文件,主要修改红框内的两个地方(二选一)

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

本地证书: 即我上面未注释的部分,放你的GoDoxy域名申请下来的本地证书,在/godoxy/certs/目录下,然后在红框内的key_path和cert_path里的XXXX替换成文件名。(可选)建议使用通配符证书,确保都可以打开域名。缺点是非自签的,3个月要换一次。

autocert:

provider: local

key_path: certs/更名.key

cert_path: certs/更名.crt

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

Cloudflare证书:下方大红框内的配置,需要填写你的Cloudflare邮箱账号、域名信息以及auth_token。没啥缺点,首选建议。

autocert:

provider: cloudflare

email: abc@gmail.com # 邮箱账号

domains: # 填写你的域名列表

- "*.domain.com"

- "domain.com"

options:

auth_token: 填写Couldflare API Key

Cloudflare Api Token获取方式如下,打开个人配置文件,选择API令牌——创建令牌——自定义令牌。在自定义令牌里,增加SSL和证书的权限保存。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

令牌只会出现一次,记得保存好备用,否则只能下次更新替换了。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

3、启动容器

打开极空间docker应用,选择Compose标签,新建项目godoxy,在添加方式里选择从本地导入,然后选择目录下的compose.yaml文件。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

导入以后,我们需要修改所有的环境变量所在位置,点击上方的查询路径按钮,复制godoxy文件夹所在的目录路径。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

将代码中所有的【极空间路径】中文,替换成复制下来的极空间路径,并创建Compose。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

如果启动后,发现子容器godoxy一直重启,那么看一下容器的GODOXY_GID和GODOXY_UID两个环境变量是不是0,如果不是的话手动编辑一下改成0即可。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

二、GoDoxy简介

GoDoxy部署完成以后,原则上我们就可以关闭所有非GoDoxy的容器端口了,因为GoDoxy会统一读取docker.sock,并且将所有容器进行反代。

直接打开域名https://godoxy.你的域名.你的后缀:38843登录系统,输入账号密码cherry/cherry登录。

🔻初始密码,可以在.env的25、26行修改。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

下面的图片是系统首页,这里展示了宿主机内的所有创建的容器,包括停止和运行中的。

并且根据项目内设的规则进行了分类,包括容器管理、媒体、下载、普通docker等。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

这里所有自动发现的容器都是可以点击的,并且已经反代完成。将鼠标移动到容器前面的名字上,可以看到浮窗里会显示反代后的URL。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

切换到Config Editor界面,这里是对容器内/config/config.yaml文件的配置。这样我们就不需要去NAS里修改了,直接可以在页面上修改。

比较重要的配置包括ACL策略(即黑白名单,支持地区、国家、IP等);PVE控制接入;远程Docker管理;通知;域名匹配等。内容比较多,就不一一介绍了,感兴趣的可以去官方网站研究。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

Proxies页面展示的所有自动发现的容器,以及它们的端口、状态、启动时间、网络延迟等,只是一个展示。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

Metrics则是所有容器的服务监控。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

Docker里是所有容器的列表展示,点开单个容器可以看到具体的容器日志。由于GoDoxy是支持接入远程docker.sock的,所以理论上可以多节点管理任何网络可达的Docker,真正成为时间管理大师。

比lukcy更好?全自动docker反代/监控/安全/导航!极空间教程

总结

这个项目我折腾了有一段时间,因为作者设置了很多安全的参数,缺少一个系统可以启动,但是无法登录也没有报错,加上自己的英文能力不太行,所以可以说是一边摸索一边询问,最后也在作者的帮助下顺利完成了项目部署。

整体体验下来,这一套反代工具,集成了安全登录、反代、容器发现、导航面板、容器监控、日志查看、远程容器管理等等功能,不可谓不强大!

搭配极空间的DDNS服务、自带浏览器,可以解决我们绝大多数的容器外网访问安全问题,让NAS深度玩法得到更多的保障!

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
63评论

  • 精彩
  • 最新
  • 必须要跟端口的话感觉更适合家里v6v4的反代,反正80,443用不了,省了配置代理时间,公有云主机反而麻烦

    校验提示文案

    提交
    是的,适合家庭。核心是全自动流程,包括发现、反代,以及安全入口

    校验提示文案

    提交
    但是nextcloud aio咋整,好像必须80/443

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 一直用的lucky,也挺好用的,就是有些容器登录网址无法打开,要手动改一下https或者http,不知道为啥。照理说按照站内的教程设置之后,应该是https或http都能打开才对呀!

    校验提示文案

    提交
    你说的是不是有些容器默认只能用加密https访问?比如ValutWarden,可以在lucky里设一个重定向,把http请求自动转成https。

    校验提示文案

    提交
    我根据教程已经设置重定向了,但还是有些地址要加s,有些必须不加s,反正就是怪怪的,好在也不影响使用。

    校验提示文案

    提交
    收起所有回复
  • 这个是不是就是uptimekuma的作者,里面看到远程链接docker.sok挺想知道什么原理,目前我飞牛小主机上安装了几个docker包括uptimekuma,只能监视本飞牛主机的docker,别的只能通过ping。我主路由是pve安装多个lxc的里跑docker,也想通过一个uptimekuma来监视,要是能实现,我就uptinekuma只装到主路由软路由里了,这样别的nas可以关机而且不用装这个uptimekuma监控。我反代了uptimekuma而且通知直达微信

    校验提示文案

    提交
    不是,只是监控界面差不多而已。

    校验提示文案

    提交
    docker 可以通过 ip 端口连

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 有个伪命题,有啥要把所有的容器反代出去?

    校验提示文案

    提交
    外网访问呀,不过现在越来越多的nas不需要了 官方开始做这个服务了

    校验提示文案

    提交
    收起所有回复
  • 看到没中文已经劝退 [皱眉]

    校验提示文案

    提交
    浏览器的 沉浸式翻译插件,你们都不用的么?全程翻译无障碍啊

    校验提示文案

    提交
    刚弄完lucky [邪恶]

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 看起来有点复杂,学习成本有点高

    校验提示文案

    提交
    其实不复杂,就修改几行文件即可。

    校验提示文案

    提交
    收起所有回复
  • 复杂,没看出来优势在哪里

    校验提示文案

    提交
    全自动,自动发现容器服务,自动反代,自动生产域名,自动生成导航面板,自动续签ssl证书,自动完成单一端口配置,自动监控

    校验提示文案

    提交
    就是把几个lucky需要手动操作的东西给自动化了

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 443端口可以吗?

    校验提示文案

    提交
    可以的,那最好了

    校验提示文案

    提交
    收起所有回复
  • 只能CF申请证书吗?

    校验提示文案

    提交
    目前是的

    校验提示文案

    提交
    收起所有回复
  • 优势在哪里,路由器可以部署吗?

    校验提示文案

    提交
    可以啊,docker都可以。优势是全自动化

    校验提示文案

    提交
    收起所有回复
  • 竟然玩pt,大胆

    校验提示文案

    提交
    大胆!PT达人在此 [脸红]

    校验提示文案

    提交
    限5m的时候踢我一下 [邪恶]

    校验提示文案

    提交
    收起所有回复
  • godoxy 的 GID和UID都是0,但仍不断重启,说权限不够

    校验提示文案

    提交
    godoxy | 06-28 18:35 ERR failed to list middleware definitions error="error listing directory config/middlewares: open config/middlewares: no such file or directory"

    校验提示文案

    提交
    什么nas?

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 是不是自动代理的只能是当时部署使用nat网络方式的?

    校验提示文案

    提交
    这个我倒没测试过macvlan和host 后头我试一下

    校验提示文案

    提交
    收起所有回复
  • 这个太复杂了,还是lucky好用啊

    校验提示文案

    提交
  • 好复杂的样子 [大囧]

    校验提示文案

    提交
  • 小白还是洗洗睡了

    校验提示文案

    提交
  • 确实看着像uptime的画面

    校验提示文案

    提交
  • 有点搞不明白 ddns和ssl这块,我api只申请了ssl证书,然后日志一直在报错dns这块

    校验提示文案

    提交
  • lucky好是因为我可以直接把luxky装在ssh之后的小米路由器里,多香

    校验提示文案

    提交
  • 插眼 [投降] 收藏一下

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
758
扫一下,分享更方便,购买更轻松