文章目录[隐藏]
前一篇文章中我们提到了在群晖的 docker 中安装 RcloneBrowser,而为了更好的为其提供网络环境,这篇文章我们将介绍如何在群晖 docker 中安装并运行 Clash 以及 UI 界面。有关下载镜像和创建容器的步骤可以参考前文,这里便不再重复说明了。
1.准备 Clash 配置文件
本篇文章并不会涉及如何获取适当的 Clash 配置文件,这部分请自行想办法解决。
在准备好 Clash 配置文件后,使用任意文本编辑器打开,查找并确认以下设置:(不要带上#及后面的部分)
- port: 7890 #http/https监听端口
- socks-port: 7891 #socks5监听端口
- allow-lan: true #允许外部连接
- external-controller: 9090 #UI监听端口
如果配置文件中不存在对应的项目,请在文件头部进行添加。其中第一,第二及第四项的端口号可以在1024-65535之间任意设置但不得重复,第三项必须设置为 true
。
示例配置文件如下:
保存后将该文件复制到群晖的共享文件夹中,如 /docker/clash/sub.yaml。
2.创建 Clash 容器
进入 docker 套件并下载映像 dreamacro/clash
,随后双击映像创建容器,并点击高级设置。在卷页面中,为 /ui
创建文件夹挂载点,为 /root/.config/clash/config.yaml
创建文件挂载,指向前一步中的配置文件。
在端口设置页面中,为前一步中的 port
, socks-port
, external-controller
三个端口创建对应的映射端口。如有需要类型可以选择 TCP 和 UDP。
3.创建 UI 容器
在 docker 中下载映像 haishanh/yacd
并创建容器,这里只需要为 80 端口创建映射端口即可。
4.登录使用
在确保以上两个容器都启动运行后,在浏览器中打开 http://群晖的ip地址:步骤3中的本地端口(本例中是 http://reizhix:5080
),便可以看到如下的登陆界面。
其中,Hostname 填写群晖的 ip 地址(切勿使用默认的127.0.0.1),Port 填写步骤2中 9090 所对应的映射端口(本例中是5090),点击 Confirm 即可进入 Clash UI 的主界面。
此时 Clash 会监听步骤2中的 5890 和 5891 端口并向局域网提供服务。由于本教程中没有配置认证,请勿将相关端口映射到外网。
大佬你好,请教一下,我按照你的教程使用docker创建了dreamacro/clash和haishanh/yacd两个容器,也弄好了clash的配置文件,节点信息都是可以使用的。启动容器之后,可以看到clash的登陆界面,但是进去之后就是找不到节点信息,尝试了各种办法,都不行,不知道是哪一步错误了,希望得到你的帮助。方便的话可以加一下QQ吗,QQ;
很好的教程,成功配置了,谢谢博主!
你好,我的是omv系统,配置后能看到节点信息,选择节点后通过代理却无法达到效果。用相同的节点信息在电脑cladh客户端使用却正常留学。不知道是哪里出错呢?
需要手动设置电脑的代理为你omv的ip:端口
很奇怪UI 一直 链接不上去。
UI 只是一个图形界面,类似 aria2 的 web 控制台。检查 ip 和端口设置
很好的教程感谢,配置过程中发下yacd页面中没有confirm 按钮 ,在接口下方有个add 按钮,
录入api url和port后点击add报failed to connect ,求指教,谢谢
我这里测试没有任何问题,请检查 yacd 中填入的 port > clash 容器对外映射 port > 配置文件中 external-controller 这整个链路中的端口设置情况。
http://clash.razord.top/#/proxies通过这个 gui 可以访问,通过 部署的yacd连接不上,还没有定位到原因。
大佬好,感谢您的分享,通过你的教程已成功在nas上部署clash,现在遇到几个奇怪的问题,
1.clash容器日志的时间和容器的时间晚8个小时,请问大佬是否遇到以上类似问题,如何解决的。
群晖 docker 时区问题网上应该能搜到很多解决办法,这个就不赘述了。
"很好的教程感谢,配置过程中发下yacd页面中没有confirm 按钮 ,在接口下方有个add 按钮,
录入api url和port后点击add报failed to connect ,求指教,谢谢"
同样的问题!一同求教!!!
博主你好,我配置导入成功UI也可以运行,但是一直显示无连接,也无上传和下载,请教下是什么情况?
检查所有的端口设置和映射
日志出现大量[TCP] dial DIRECT (match IPCIDR/127.0.0.0/8) to 127.0.0.1 error: dial tcp4 127.0.0.1:2379: connect: connection refused
日志完全不应该出现127.0.0.1这样的ip,我建议你再仔细看一次教程。
不错,非常简单,一次成功。
有了这样的代理之后,很多客户端设备上就不用装任何软件了,直接一个代理就OK了,目前发现TG的手机客户端上不了,估计是因为WIFI网络连接中设置的代理是HTTP代理,TG好像需要socks代理才行。
IOS 版在 Data and Storage 里可以单独设置 socks5 代理