Docker一键部署Clash服务与管理面板

官方Clash部署需要采用两个镜像分别启动服务和面板, 此处使用官方server镜像和官方管理面板前端代码,重新修改打包构建,使用一个镜像可以直接启动服务和管理面板,简单轻量。

修改后源码地址

修改内容

  • 修改前端接口baseurl,不再通过用户配置,使用页面相对路径/api​。
  • 去除clash服务接口配置框。
  • docker镜像增加nginx和前端打包文件。
  • nginx反代clash管理接口,实现管理页面无需配置直接管理容器内clash服务。

启动容器

docker compose方式

version: '3.8'

services:
  clash:
    image: woodchen/clash-and-dashboard:latest
    container_name: clash
    restart: always
    logging:
      options:
        max-size: "1m"
    volumes:
      - /data/clash/clash.yaml:/root/.config/clash/config.yaml
    ports:
      - "7888:8080"
      - "7890:7890"

sh方式

docker run -d \
  --name clash \
  --restart=always \
  --log-opt max-size=1m \
  -v /data/clash/clash.yaml:/root/.config/clash/config.yaml \
  -p 7888:8080 -p 7890:7890 \
  woodchen/clash-and-dashboard:latest
  • -v /data/clash/clash.yaml:/root/.config/clash/config.yaml 提供clash的yaml文件,文件如何获取请读者自行解决
  • -p 7888:8080 管理页面端口
  • -p 7890:7890 http代理端口 socks端口使用7891
  • woodchen/clash-and-dashboard:latest 修改后的镜像

访问Ip:7888管理页面即可,注意非本机使用,请勾选允许局域网连接