Docker 安装 Clash 并对外提供代理服务

此教程默认已经安装好 Docker ,如无安装请自行搜索进行安装。

配置

  • 端口: port: 7890 ; socks-port: 7891
  • 运行局域网访问: allow-lan: true
  • 对外提供 rest 接口: external-controller: 0.0.0.0:9090
  • 面板路径: external-ui: /ui (如果不需要本地部署面板,可省略)
  • 配置文件 yaml, 挂载到: /root/.config/clash/config.yaml

运行

 docker run -d --name clash-client --restart always -p 7890:7890 -p 7891:7891 -p 9090:9090 -v $PWD/clash:/root/.config/clash -v $PWD/clash/ui:/ui dreamacro/clash

$PWD 为当前执行命令所在的当前目录
本地不部署面板可省略 -v $PWD/clash/ui:/ui

面板 (可能运行不起来,可使用在线管理 UI)

  1. 自己部署面板
    使用官方的面板 : https://github.com/Dreamacro/clash-dashboard/tree/gh-pages
    使用另一个第三方看起来很炫酷的面板: https://github.com/haishanh/yacd/tree/gh-pages

  2. 使用在线面板(推荐)
    yacd http://yacd.haishan.me

配置文件(config.yaml)

既然对外提供服务, 最好加密, 包括 Dashboard 加密和 http, socks 代理加用户名密码认证

YAML(路径为 $PWD/clash/config.yaml)

port: 7890
socks-port: 7891
allow-lan: true
mode: Rule
log-level: info
external-controller: '0.0.0.0:9090'
secret: 'linux4444'
external-ui: /ui
authentication:
  - "user:passwd"

配置文件即为 clash 代理,可复制你自己代理配置文件

启动之后,便可以使用 Dashboard 来操作 Clash 了.