January 18, 2023 · 技术文章

在ubuntu server中通过docker-compose部署clash

事前准备

  1. 安装docker与docker-compose
  2. 准备一份config.yml。

docker-compose 内容

version: "3.7"
 
services:
  clash:
    image: dreamacro/clash
    container_name: clash
    restart: always
    ports:
      - 7890:7890
      - 7891:7891
      - 9090:9090
    volumes:
      - ./clash:/root/.config/clash
      - ./ui:/ui
    networks:
      - clash

  # Clash Dashboard
  clash-dashboard:
    image: centralx/clash-dashboard
    container_name: clash-dashboard
    ports:
      - "9091:80"
    restart: always
    networks:
      - clash

networks:
  clash:
    driver: bridge
    name: clash

.zshrc or .bashrc 代理设置

在配置文件中添加如下代码以设置代理。

function proxy_off(){
    unset http_proxy
    unset https_proxy
    unset all_proxy
    echo -e '代理已关闭'
}

function proxy_on() {
    export no_proxy='localhost,127.0.0.1,localaddress,.localdomain.com'
    export http_proxy='http://127.0.0.1:7890'
    export https_proxy='http://127.0.0.1:7890'
    export all_proxy='socks5://127.0.0.1:7890'
    echo -e '代理已开启'
}
proxy_on

测试

curl google.com