Skip to content

Docker 容器化部署 ​

使用 Docker 是在正式環境、NAS 裝置與私有雲伺服器上執行 OneASR 的最佳推薦方式。


1. 使用 docker run 快速啟動 ​

NVIDIA GPU 硬體加速模式 ​

確保宿主機已安裝 NVIDIA Container Toolkit:

bash
docker run -d   --name oneasr-gateway   --gpus all   -p 8000:8000   -v $(pwd)/models:/app/models   -v $(pwd)/config.yaml:/app/config.yaml   --restart unless-stopped   codeandxv/oneasr:latest

CPU 模式(無需獨立顯示卡) ​

bash
docker run -d   --name oneasr-gateway   -p 8000:8000   -v $(pwd)/models:/app/models   -v $(pwd)/config.yaml:/app/config.yaml   --restart unless-stopped   codeandxv/oneasr:latest

2. 使用 Docker Compose(推薦) ​

在專案工作目錄中建立 docker-compose.yml 檔案:

yaml
version: '3.8'

services:
  oneasr:
    image: codeandxv/oneasr:latest
    container_name: oneasr-gateway
    restart: unless-stopped
    ports:
      - "8000:8000"
    environment:
      - ONEASR_API_KEY=sk-oneasr-v1-p_L3kXm9QZ8sT2vA4wE7rY1u
      - WORKERS=2
    volumes:
      - ./models:/app/models
      - ./config.yaml:/app/config.yaml
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]

啟動容器服務:

bash
docker compose up -d

查看執行記錄(Logs):

bash
docker compose logs -f oneasr

3. 存取 Web 控制台與 API 文件 ​

服務啟動成功後,可在瀏覽器中直接存取:

  • 視覺化 Web 儀表板:http://localhost:8000
  • Swagger 互動式 API 文件:http://localhost:8000/docs
  • 健康檢查端點:http://localhost:8000/api/v1/health