# KnowForge Docker Compose 部署
# 默认使用零配置的 SQLite,数据(含数据库、上传、配置)持久化在命名卷 knowforge-data。
# 首次启动后访问 http://<主机>:6969/install 完成安装向导。
services:
  knowforge:
    # 默认从源码本地构建。若想直接使用官方发布的镜像(GitHub Packages / GHCR),
    # 删除下面的 build 段,并把 image 改为:ghcr.io/devlive-community/knowforge:latest
    build:
      context: .
      dockerfile: Dockerfile
    image: knowforge:latest
    container_name: knowforge
    restart: unless-stopped
    ports:
      - "6969:6969"
    environment:
      KNOWFORGE_PORT: "6969"
      # 数据目录已在镜像中固定为 /data,无需覆盖
    volumes:
      - knowforge-data:/data
    healthcheck:
      test: ["CMD", "wget", "-qO-", "http://127.0.0.1:6969/api/v1/health"]
      interval: 30s
      timeout: 5s
      retries: 5
      start_period: 40s

volumes:
  knowforge-data: