Docker Compose 构建报错:Windows 路径解析 https 协议冲突

Docker Compose 构建报错:Windows 路径解析 https 协议冲突


Ollama
Open-LLM-VTuber Ollama Qwen 2.5 Sherpa-Onnx Edge-TTS

拉取Open-LLM-VTuber,项目报错 官方建议在 Windows 环境下回退到本地相对路径构建

表现

image.png

从报错日志 CreateFile F:\...\https:: The filename... syntax is incorrect. 可以一眼看出,这是 Windows 环境下 Docker Compose 的一个底层路径解析 Bug。

当你在 docker-compose.ymlbuild: context: 中直接填入 https://... 网址时,Windows 的文件系统 API 会弱智地把 https: 当作一个类似于 C:F: 的本地硬盘驱动器盘符。它试图在你的 F 盘下去寻找一个名为 https: 的文件夹,从而导致了“文件名或卷标语法不正确”的致命崩溃。

原因

Windows 系统的底层路径解析将 https:// 误认为了本地盘符导致构建崩溃;最彻底的解法是手动 git clone 项目源码到本地,并将 Docker 配置文件指向该本地目录进行构建。

步骤 1:手动将数字人源码克隆到本地

确保你当前在 F:\work_space\python_workspace\AIRI_Project 目录下执行:

# 使用 Git 将源码克隆到名为 "npc_engine" 的子文件夹中
git clone https://github.com/Open-LLM-VTuber/Open-LLM-VTuber.git npc_engine

步骤 2:修改为“纯本地引用”的配置文件

清空你的 docker-compose.yml,替换为以下配置。注意看 build: context: 的变化,它现在指向了刚刚下载的本地文件夹。

services:
  magic-witch-npc:
    build:
      # 【核心更改】直接指向刚刚 git clone 下来的本地源码目录
      context: ./npc_engine
    container_name: magic_witch_container
    ports:
      - "8000:8000"
      - "3000:3000"
    environment:
      - LLM_PROVIDER=openai
      - OPENAI_API_KEY=你的DEEPSEEK_API_KEY_填这里
      - OPENAI_BASE_URL=https://api.deepseek.com/v1
      - LLM_MODEL=deepseek-chat
      - TTS_ENGINE=edge-tts
    volumes:
      # 将 F 盘外部的模型挂载到刚编译好的容器中
      - ./models/witch:/app/live2d_models/witch
    restart: always

步骤 3:最终本地构建与点火

执行以下命令

# 强制基于本地源码进行容器构建并后台运行
docker-compose up -d --build

# 实时查看构建进度与启动日志
docker-compose logs -f
© 2026 Personal Website
Developed by Ryan 🫡