Clash 懒人全家桶是一个基于 Docker Compose 的 Clash 一键部署方案,它可以帮助你快速搭建一个自定更新订阅的 Clash 代理服务。
个人使用场景
git clone https://cnb.cool/kangaroohy/open-source/clash-with-ui.git
cd clash-with-ui
cp .env.example .env
# 在 .env 文件中设置 RAW_SUB_URL="你自己的 Clash 订阅"
# (可选) 在 .env 文件中设置 API_SECRET=xxx,可以设置api对应的认证 secret
或者
... volumes: - /path/to/your/config.yaml:/root/.config/clash/config.yaml ...
只需要保留
subconverter文件夹和.env配置文件和docker-compose.yaml即可
docker compose up -d
如果只需要本地访问代理,则修改一下yaml即可,改为127.0.0.1可访问
services:
subconverter:
image: docker.cnb.cool/kangaroohy/open-source/clash-with-ui/subconverter:latest
deploy:
resources:
limits:
memory: 128MB
hostname: subconverter
container_name: subconverter
volumes:
- ./subconverter/all_base.tpl:/base/base/all_base.tpl
- ./subconverter/pref.toml:/base/pref.toml
ports:
- "127.0.0.1:25500:25500"
clash-with-ui:
image: docker.cnb.cool/kangaroohy/open-source/clash-with-ui:latest
deploy:
resources:
limits:
memory: 256MB
container_name: clash-with-ui
depends_on:
- subconverter
env_file:
- .env
ports:
- "127.0.0.1:$ALL_PROXY_PORT:7890"
- "127.0.0.1:$CONTROL_PANEL_PORT:9090"
查看控制面板: http://[服务器IP]:9090/ui?hostname=[服务器IP]
export https_proxy=http://[服务器IP]:7890
export http_proxy=http://[服务器IP]:7890
export all_proxy=socks5://[服务器IP]:7890
为什么内置 Web 控制台?
在许多使用场景中,并没有条件使用公网的控制平台(比如 yacd.haishan.me)来管理 Clash。如果条件允许,你依旧可以使用自己的管理工具来控制 Clash。
我在服务器上无法访问 Dockerhub / Github,项目构建失败怎么办?
本身该项目是为了工程存在的,作为项目贡献者我无法提供在各种复杂内外网环境均可使用依赖。建议你 Fork 该项目,并在自行修改 Dockerfile 和 docker-compose,将依赖指向可以访问的镜像源。