version: '3.8'

services:
  claude-code:
    build:
      context: .
      dockerfile: Dockerfile
    image: claude-code-rust:latest
    container_name: claude-code
    
    # 交互式终端
    stdin_open: true
    tty: true
    
    # 卷挂载
    volumes:
      # 配置文件持久化
      - claude-config:/home/claude/.config/claude-code
      # 可选：挂载项目目录
      # - .:/workspace
    
    # 环境变量
    environment:
      # 使用你的 API 密钥配置下列变量
      # ANTHROPIC_API_KEY: ${ANTHROPIC_API_KEY}
      # API_BASE_URL: ${API_BASE_URL}
      
      # 或使用阿里云 DashScope
      # DASHSCOPE_API_KEY: ${DASHSCOPE_API_KEY}
      # API_BASE_URL: https://coding.dashscope.aliyuncs.com/v1
    
    # 网络（可选）
    networks:
      - claude-network
    
    # 重启策略
    restart: no

volumes:
  claude-config:
    driver: local

networks:
  claude-network:
    driver: bridge

# ==========================================
# 使用说明：
# ==========================================
# 
# 1. 启动 REPL 交互模式：
#    docker-compose run --rm claude-code repl
#
# 2. 执行单次查询：
#    docker-compose run --rm claude-code query --prompt "你的问题"
#
# 3. 查看版本：
#    docker-compose run --rm claude-code --version
#
# 4. 查看帮助：
#    docker-compose run --rm claude-code --help
#
# 5. 使用环境变量配置 API（create .env file）：
#    ANTHROPIC_API_KEY=sk-ant-xxxxxxx
#    API_BASE_URL=https://api.anthropic.com
#    docker-compose run --rm claude-code repl
#
