clash核心程序 docker 环境运行,支持 restful接口,dashboard ui,一端运行支持所有的操作系统,Linux|windows|macos|ios|安卓|科学上网

clash 现在客户端有很多比如:clashX 用在 Mac 端的、clash for android 运行在安卓平台的、clash for windows 则是一款跨平台的客户端,别看他们是运行在不同端,但他们有一个共同点,用的核心文件是一样的, clash 核心文件包含了 clash 所有的功能,像分流规则、局域网连接、socks5/http 这些都支持。我们下面来看下怎么在 Docker 环境运行 clash


一、介绍&准备

之所以安装在 Docker 环境是因为比较通用,任何支持Docker环境都可以像 Nas,软路由,虚拟机都没问题,这里建议在 Linux 环境下使用 Docker,支持会比较好。

1. 准备

1. 需要一个 Docker 的环境(最好是运行在 Linux电脑),可以长期运行的
2. 安装 Docker 
Linux 环境使用一键脚本安装

sudo curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

安装完成后运行 Docker 命令需要带上 sudo ,如果你嫌这个麻烦,可以使用下面方法去除
sudo groupadd docker ## 如果没有 docker 组的话,添加一个 docker 组
sudo gpasswd -a ${USER} docker ## 把当前登陆的用户添加到 docker 组
sudo service docker restart ## 重启 docker 服务
newgrp - docker ## 切换到新的回话

二、安装 clash

前面安装好 Docker 后,我们就可以把 clash 镜像拉取下来

1. 拉取镜像及运行容器

我们使用命令拉取镜像文件
docker pull dreamacro/clash
拉取完后,我们可以使用 docker images 查看已经拉取的镜像文件
下面要使用命令把镜像文件运行起来
docker run -d --name=clash --network=host -v "$PWD/clash:/root/.config/clash" dreamacro/clash
docker run 是运行容器固定前缀, -d 是后台运行 --name  给容器取一个名字 --network=host 与宿主机同一个网络环境 -v 文件目录映射
运行完成后,会出现一串字符既表示运行成功

我们可以使用 docker logs 容器Id 查看日志文件

三、restfull 接口及 clash dashboard ui 配置

上面安装完成后,我们如果需要一个可视化界面,需要导入 clash dashboard 这个一个官方的UI 界面 官方地址 。我们可以点 download zip 把他给下载过来
任何配置文件修改记得重启一下 docker 避免出现问题


1. 配置 restful 接口

dashboard ui 是基于 restful 接口开发的,如果要引入页面,需要先把接口打开,我们需要在clash的配置文件 config.yaml 加入一项: external-contoller: 0.0.0.0:9090 这里端口可以自定义
加入完成后,在浏览器输入 http://主机地址:9090. 如果显示 hello clash 说明配置正确

2. 配置 dashboard

配置restful接口完成后,我们需要在 config.yaml 中引入 clash dashboard 文件,把文件解压缩并放到与 config.yaml 同一目录下
然后我们再编辑 config.yaml 加入 external-ui: 目录名,使可以引入 clash dashboard 
在浏览器中输入 http://主机ip:9090 就可以访问 dashboard. 页面,这里会显示:代理、日志、规则、连接、设置等信息

四、配置节点数据

但现在是没有节点文件,我们通过 v2rayse.com 来获取免费节点数据,拷贝订阅链接


我们把原来的 config.yaml 删除并使用订阅的配置文件,使用命令 wget -O config.yaml 订阅链接下载文件

配置 external-controller 与 external-ui
重启容器

五、配置不同端测试

1. 终端

终端配置需要使用命令 export all_proxy=http://clash_ip地址:7890 配置完成后可以实现在终端的科学上网

2. Linux 端

需要配置浏览器为手动代理,并指向 clash 主机

3. Windows 端

和Linux端一样,只需要把浏览器的代理指向 clash 监听的服务就可以

4. Mac 端

Mac端也一样,把浏览器的代理指向clash服务,设置地方和 windows 有点不一样

5. IOS 端

IOS 需要在 wifi 中设置 http 代理
这些都配置完成后,任何端都可以实现翻墙上网

六、总结

我们clash docker 安装和配置就完成了,选择 docker 主要是跨平台比较方便,任何平台都是这样操作,如果你的 nas 软路由也支持 docker 那么也可以这么操作。我们可以选择一台稳定的服务用,用来充当软路由的功能。配置完成后所有的端只需要设置好 http 代理都可以享受clash带来的好处,clash dashboard 给我们也带来了很大的方便,使用 clash 核心程序官方有新的特性我们也可以更快的使用。


3 评论

  1. 三、restfull 接口及 clash dashboard ui 配置

    这个地方下载下来了不知道怎么配置进去- -

    回复删除
    回复
    1. 这里有详细些的教程,可以来这里看看。
      https://youtu.be/VOlWdNZAq_o

      删除
  2. 按照教程 查看日志时没有显示监听7890端口,修改config文件,也打不开9090地址

    回复删除
后一页 前一页