前言 本篇只介绍通过Docker部署Clash,实现网络代理,不提供代理节点 本篇只介绍Clash核心的部署方法,如需使用操作可以尝试通过Docker部署Yacd Clash也可以作为DNS服务器防止DNS污染 This is a general overview of the features that comes with Clash.(Github )
准备一个Clash配置文件
传送门
config.yaml 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 port: 7890 socks-port: 7891 redir-port: 7892 mixed-port: 7893 allow-lan: true mode: global log-level: info external-controller: :9090 dns: enable: true ipv6: true listen: 0.0 .0 .0 :53 nameserver: - 8.8 .8 .8 proxies: - {name: 节点名称 , server: 节点服务器域名或IP地址 , port: 节点端口号 , type: 节点代理类型 , cipher: 节点密码加密方式 , password: 节点密码 , udp: true }
通过Docker部署
/root/Clash/config
:存放Clash配置文件的目录--ip=<ip>
:设置IP地址,需要与桥接的网关在同一个网段
1 docker run -d --network=bridge --ip=<ip> --name clash --restart=always -v /root/Clash/config:/root/.config/clash/ dreamacro/clash
部署UI
包含dashboard和yacd两款Clash的UI
下载项目
<ui>
:存放ui目录的绝对路径
1 git clone https://github.com/Feiju12138/openwrt-cat-ui.git <ui>
通过Docker部署时携带ui路径 1 docker run -d -p 9090:9090 --name clash --restart=always -v /root/Clash/config:/root/.config/clash/ -v <ui>:/usr/share/openclash/ui dreamacro/clash
修改Clash配置
secret
:如果配置了秘密,当使用WebUI来操作Clash时,需要提供秘密才能操作,如果不配置则此过程不需要提供秘密
config.yaml 1 2 3 external-controller: :9090 external-ui: "<ui>" secret: "<secret>"
完成 参考文献 Youtube——Sagit DockerHub——dreamacro/clash