云服务器使用 Docker 搭建 Clash 代理
type
Post
status
Published
date
Dec 6, 2022
slug
clash-docker
summary
将 clash 服务在 Docker 容器中运行,使用
volumes
挂载 clash 的配置文件,并定时更新该配置文件tags
工具
Clash
docker
Linux
Proxy
icon
clash 这 UI 不太靠谱,能不能连上随缘
目前已经换成了 v2rayA: 云服务器使用 v2rayA
1. 思路分析
将 clash 服务在 Docker 容器中运行,使用
volumes
挂载 clash 的配置文件,并定时更新该配置文件2 操作
2.1 服务器安装 Docker(略)
2.2 安装 clash
2.2.1 创建存放配置文件的目录
2.2.2 创建 config.yaml 文件
<你的Clash订阅链接>
为购买或自建的机场提供下载下来的
config.yaml
格式如下:需要关注的只是:
port
, socks-port
里的端口值,一般是 7890
, 7891
2.3.2 创建 docker-compose.yaml 文件并添加内容
内容如下:
network_mode: "host"
必须是 host,不能是default(bridge),不然代理不上2.3.3 开放云服务器 7890, 7891, 9090 等端口
在云服务器管理界面,防火墙里开放端口即可。
2.3.4 启动服务
无报错,即为成功。如果有报错,通常都是端口被占用等原因,换个端口。
2.3.5 服务器代理环境变量配置
追加如下内容
(之所以要用根目录下的
.bashrc
,是为了其他非 root 用户也能使用)2.3.6 测试
2.3.6.1 未打开代理前测试
可以正常返回内容
无法返回内容
2.3.6.2 打开代理后测试
2.3 定期更新订阅
机场的服务器是不断变化的,所以我们也需要不断更新我们的
config.yaml
文件2.3.1 新建一个脚本文件
内容如下:
注意更改
<你的clash订阅地址>
赋予其可执行权限:
2.3.2 定期执行脚本
赋予其可执行权限:
2.3.2 定期执行脚本
2.4 UI 界面
Yet Another clash dashboard(yacd) 提供了一个网站
在弹出的界面输入
http://你的服务器IP:9090
,点击Add 即可。