--- title: Docker一键部署Clash Meta (mihomo) + metacubexd面板教程 date: 2026-01-13 tags: - Linux系统Docker - Docker - Clash - mihomo - metacubexd - 代理 - 网络 source: https://www.cloud-guest.top/archives/gS23mQ65 --- # Docker 一键部署 Clash Meta (mihomo) + metacubexd 面板教程(2026 年最新版) **目标:** 使用最新 MetaCubeX/mihomo 内核 + 官方 metacubexd Web 面板,实现稳定、高性能的代理服务 **适用环境:** Linux 服务器 / NAS(推荐 Ubuntu/Debian),已安装 Docker + Docker Compose **核心特点:** - 使用 `network_mode: host`(TUN/透明代理最稳) - 容器别名统一为 `clash`(核心)+ `dashboard`(面板),操作更友好 - 提前处理 Country.mmdb 避免经典报错 ## 1. 准备工作 安装 Docker & Docker Compose(如果未安装,一键执行): ```bash # Ubuntu/Debian 推荐方式(2026 年最新) curl -fsSL https://get.docker.com | sudo sh sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose sudo usermod -aG docker $USER ``` 创建项目目录: ```bash mkdir -p ~/mihomo && cd ~/mihomo ``` ## 2. 提前下载 GeoIP 数据库(必须!避免 not a directory 错误) mihomo 需要 Country.mmdb(文件,不是文件夹) ```bash mkdir -p config cd config # 轻量版 country-lite.mmdb(体积小 ≈1-2MB) curl -L https://github.com/MetaCubeX/meta-rules-dat/releases/latest/download/country-lite.mmdb \ -o Country.mmdb ``` **关键:** 启动前这个路径必须存在文件,否则 Docker 会自动创建成目录导致启动失败。 ## 3. docker-compose.yml(完整配置) ```yaml version: '3.8' services: clash: container_name: clash image: metacubex/mihomo:Alpha restart: unless-stopped network_mode: host pid: host ipc: host cap_add: - ALL volumes: - ./config:/root/.config/mihomo - /dev/net/tun:/dev/net/tun - /etc/localtime:/etc/localtime:ro dashboard: container_name: dashboard image: ghcr.io/metacubex/metacubexd:latest restart: unless-stopped network_mode: host ``` ## 4. 准备 mihomo 主配置文件 config.yaml ```yaml # 基本端口与访问 mixed-port: 7890 allow-lan: true external-controller: 0.0.0.0:9090 secret: "" mode: rule log-level: info geodata-mode: false geo-auto-update: true geo-update-interval: 24 proxy-providers: my-sub: type: http url: "https://你的机场订阅链接" path: ./subscriptions/my-sub.yaml interval: 86400 health-check: enable: true url: "https://www.gstatic.com/generate_204" interval: 300 proxy-groups: - name: "自动选择" type: url-test include-all: true url: "http://www.gstatic.com/generate_204" interval: 300 rules: - MATCH,自动选择 ``` ## 5. 启动与常用命令 ```bash # 首次启动 docker compose up -d # 查看核心日志 docker compose logs -f clash # 重启核心 docker compose restart clash # 更新镜像并重启 docker compose pull && docker compose up -d # 停止+删除容器 docker compose down ``` ## 6. 访问方式 - **Web 面板:** http://你的服务器IP(host模式默认80端口) - **连接后端:** http://127.0.0.1:9090 - **代理端口:** HTTP/SOCKS5混合端口 7890 ## 7. 常见问题 | 问题 | 解决方案 | |------|---------| | not a directory | Country.mmdb必须是文件,步骤2已解决 | | 面板连不上 | 确认external-controller是0.0.0.0:9090 | | TUN不工作 | 必须host模式 + /dev/net/tun挂载 | ## 8. 推荐资源 - mihomo仓库:https://github.com/MetaCubeX/mihomo - metacubexd面板:https://github.com/MetaCubeX/metacubexd - 官方文档:https://wiki.metacubex.one/