专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像 官方专业版轩辕镜像 官方专业版官方专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 1072982923

justinluu132/claude-code Docker 镜像 - 轩辕镜像 | Docker 镜像高效稳定拉取服务

claude-code
justinluu132/claude-code
justinluu132
A Claude Code management platform.
0 次下载
📦 一套镜像服务,解决研发 / 测试 / 生产三套环境
镜像简介版本下载
📦 一套镜像服务,解决研发 / 测试 / 生产三套环境

Docker Overview

Claude Code — Amazon Q Developer to Claude API bridge with production-ready containerized deployment.


Architecture

┌─────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│                                          Docker Compose Stack                                                    │
├──────────────────┬──────────────────────┬────────────────────────────┬─────────────────────────────────────────┤
│   POSTGRES       │      BACKEND         │        FRONTEND            │         OBSERVABILITY STACK             │
│  (PostgreSQL 16) │   (Python 3.11)      │      (Node.js 20)          │                                         │
│                  │                      │                            │  ┌─────────────────────────────────────┐ │
│  ┌────────────┐  │  ┌───────────────┐   │  ┌──────────────────┐      │  │ Grafana (3001) - Dashboards        │ │
│  │ PostgreSQL │◄─┼──│ FastAPI Server│◄──┼──│ Next.js 16 App   │      │  │ Prometheus (9090) - Metrics         │ │
│  │  Database  │  │  │ Amazon Q Bridge│  │  │ React 19 UI      │      │  │ Loki (3100) - Log Aggregation      │ │
│  └────────────┘  │  │ + Metrics     │   │  └──────────────────┘      │  │ Jaeger (***) - Tracing           │ │
│       │          │  │ (Port 9464)   │   │         │                  │  │ Promtail - Log Shipping             │ │
│       ▼          │  └───────────────┘   │         ▼                  │  └─────────────────────────────────────┘ │
│   Port 5432      │    Port 8000         │    Port 3000               │                                         │
└──────────────────┴──────────────────────┴────────────────────────────┴─────────────────────────────────────────┘
         │                                                                                    │
         ▼                                                                                    ▼
  ┌──────────────┐                                                                    ┌─────────────────┐
  │ postgres_data│                                                                    │ Observability   │
  │   Volume     │                                                                    │ Data Volumes:   │
  └──────────────┘                                                                    │ - loki_data     │
                                                                                      │ - prometheus_data│
                                                                                      │ - grafana_data  │
                                                                                      └─────────────────┘

Quick Start

1. Prerequisites
  • Docker Engine 20.10+
  • Docker Compose V2
2. Pull from Docker Hub
bash
docker pull justinluu132/claude-code:latest

📦 Docker Hub: [***]

3. Configuration

Create a .env file in the project root:

bash
# Required
ADMIN_PASSWORD="your-secure-password"

# Mode Configuration
MODE="development"             # "development" or "production"

# Optional - Database
# Note: docker-compose.yml sets DATABASE_URL to PostgreSQL by default
# You can override it here if needed:
# DATABASE_URL=""              # Empty = SQLite (./data/data.sqlite3)
# DATABASE_URL="postgresql://user:pass@host/db"  # Custom PostgreSQL
# DATABASE_URL="mysql://user:pass@host/db"       # MySQL

# Optional - Advanced
MAX_ERROR_COUNT=100
TOKEN_COUNT_MULTIPLIER=1.0
HTTP_PROXY=""
SSL_VERIFY="true"              # Set to "false" to disable SSL verification
ENABLE_CONSOLE="true"
FRONTEND_URL="http://localhost:3000"
PORT=8000
4. Launch
bash
# Start all services
docker-compose up -d

# View logs
docker-compose logs -f

# Stop services
docker-compose down
5. Access
ServiceURLPurpose
Frontendhttp://localhost:3000Modern Chat Interface
Chat UIhttp://localhost:3000/chatFull ***-style UI
Backendhttp://localhost:8000Claude API Bridge
Adminhttp://localhost:3000Token & Account Management
Observability Stack
Grafanahttp://localhost:3001Dashboards & Visualization
Prometheushttp://localhost:9090Metrics Collection
Jaegerhttp://localhost:***Distributed Tracing
Lokihttp://localhost:3100Log Aggregation
Metricshttp://localhost:9464/metricsApplication Metrics

Services

PostgreSQL Service
yaml
postgres:
  image: postgres:16-alpine
  environment:
    POSTGRES_DB: claude_code
    POSTGRES_USER: claude_user
    POSTGRES_PASSWORD: claude_password
  volumes:
    - postgres_data:/var/lib/postgresql/data
  ports:
    - "5432:5432"
  healthcheck:
    test: ["CMD-SHELL", "pg_isready -U claude_user -d claude_code"]
    interval: 10s
    timeout: 5s
    retries: 5
  restart: unless-stopped

Features:

  • PostgreSQL 16 Alpine for minimal footprint
  • Health checks for service readiness
  • Persistent data storage via named volume
  • Automatic restart on failure
Backend Service
yaml
backend:
  build: .
  ports:
    - "8000:8000"
    - "9464:9464"  # Prometheus metrics
  env_file:
    - .env
  environment:
    - DATABASE_URL=postgresql://claude_user:claude_password@postgres:5432/claude_code
    - JAEGER_HOST=jaeger
    - LOKI_URL=[***]
  depends_on:
    postgres:
      condition: service_healthy
    jaeger:
      condition: service_started
    loki:
      condition: service_started
  restart: unless-stopped
  logging:
    driver: "json-file"
    options:
      max-size: "10m"
      max-file: "3"
      labels: "service,environment"
      tag: "{{.Name}}/{{.ID}}"

Features:

  • Claude API compatible endpoints (/v1/messages)
  • Amazon Q Developer integration with streaming
  • Multi-database support (SQLite, PostgreSQL, MySQL)
  • Token management with rate limiting and scopes
  • Account management & AWS OIDC authentication
  • Health checks at /healthz
  • Conversation persistence and management
  • Usage analytics and monitoring
  • Prometheus metrics endpoint at port 9464
  • Distributed tracing with Jaeger integration
  • Structured logging with JSON format and log rotation
  • Runs as non-root user (app)
  • Waits for PostgreSQL and observability services before starting
Frontend Service
yaml
frontend:
  build:
    context: ./frontend
    args:
      BACKEND_URL: [***]
  ports:
    - "3000:3000"
  environment:
    - BACKEND_URL=[***]
  depends_on:
    - backend
  restart: unless-stopped

Features:

  • Next.js 16 with React 19 and Turbopack
  • Full ***-style chat interface
  • Real-time streaming responses with thinking mode
  • Conversation management with AI-generated titles
  • Admin dashboard with tabbed interface
  • Token usage analytics and monitoring
  • Server-side rendering with standalone build
  • Runs as non-root user (nextjs)
Observability Services
Jaeger - Distributed Tracing
yaml
jaeger:
  image: jaegertracing/all-in-one:1.50
  ports:
    - "***:***"  # UI
    - "6831:6831/udp"  # Agent (thrift)
    - "***:***"  # Collector HTTP
  environment:
    - COLLECTOR_ZIPKIN_HOST_PORT=:9411
    - COLLECTOR_OTLP_ENABLED=true
  restart: unless-stopped
Grafana Loki - Log Aggregation
yaml
loki:
  image: grafana/loki:2.9.0
  ports:
    - "3100:3100"
  command: -config.file=/etc/loki/local-config.yaml
  volumes:
    - loki_data:/loki
    - ./observability/loki-config.yaml:/etc/loki/local-config.yaml:ro
  restart: unless-stopped
Promtail - Log Shipper
yaml
promtail:
  image: grafana/promtail:2.9.0
  volumes:
    - /var/lib/docker/containers:/var/lib/docker/containers:ro
    - /var/run/docker.sock:/var/run/docker.sock:ro
    - ./observability/promtail-config.yaml:/etc/promtail/config.yaml:ro
  command: -config.file=/etc/promtail/config.yaml
  depends_on:
    - loki
  restart: unless-stopped
Prometheus - Metrics Collection
yaml
prometheus:
  image: prom/prometheus:v2.47.0
  ports:
    - "9090:9090"
  command:
    - '--config.file=/etc/prometheus/prometheus.yml'
    - '--storage.tsdb.path=/prometheus'
    - '--web.console.libraries=/usr/share/prometheus/console_libraries'
    - '--web.console.templates=/usr/share/prometheus/consoles'
  volumes:
    - ./observability/prometheus.yml:/etc/prometheus/prometheus.yml:ro
    - prometheus_data:/prometheus
  restart: unless-stopped
Grafana - Visualization and Dashboards
yaml
grafana:
  image: grafana/grafana:10.1.0
  ports:
    - "3001:3000"
  environment:
    - GF_SECURITY_ADMIN_PASSWORD=admin
    - GF_USERS_ALLOW_SIGN_UP=false
    - GF_SERVER_ROOT_URL=http://localhost:3001
  volumes:
    - grafana_data:/var/lib/grafana
    - ./observability/grafana/provisioning:/etc/grafana/provisioning:ro
  depends_on:
    - prometheus
    - loki
    - jaeger
  restart: unless-stopped

Data Persistence

Volume Configuration
yaml
volumes:
  postgres_data:
  loki_data:
  prometheus_data:
  grafana_data:

The Docker Compose setup uses named volumes for data persistence:

  • postgres_data - PostgreSQL database storage
  • loki_data - Loki log storage
  • prometheus_data - Prometheus metrics storage
  • grafana_data - Grafana dashboards and configuration
Multi-Database Support
bash
# PostgreSQL (Docker Compose default)
DATABASE_URL="postgresql://claude_user:claude_password@postgres:5432/claude_code"

# SQLite (alternative - requires ./data directory mount)
DATABASE_URL=""

# MySQL (alternative)
DATABASE_URL="mysql://user:password@host:3306/dbname"
Backup
bash
# PostgreSQL backup (Docker Compose default)
docker-compose exec postgres pg_dump -U claude_user claude_code > backup_$(date +%Y%m%d).sql

# Restore PostgreSQL backup
cat backup_20231201.sql | docker-compose exec -T postgres psql -U claude_user claude_code

# For SQLite (if using DATABASE_URL="")
docker-compose stop backend
cp ./data/data.sqlite3 ./backup/data.sqlite3.$(date +%Y%m%d)
docker-compose start backend

Health Monitoring

Backend Health Check
dockerfile
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
    CMD python -c "import urllib.request; urllib.request.urlopen('http://localhost:8000/healthz')"
Check Container Health
bash
# View health status
docker-compose ps

# Check specific container
docker inspect --format='{{.State.Health.Status}}' claude-code-backend-1

# Monitor system health
curl http://localhost:8000/healthz

Environment Variables

VariableDefaultDescription
MODEdevelopmentApplication mode (dev/prod)
ADMIN_PASSWORDadminWeb console admin password
DATABASE_URL(empty)Database connection (empty = SQLite)
MAX_ERROR_COUNT100Auto-disable account threshold
TOKEN_COUNT_MULTIPLIER1.0Token pricing multiplier
HTTP_PROXY(empty)HTTP proxy for outbound requests
SSL_VERIFYtrueSSL certificate verification
ENABLE_CONSOLEtrueEnable web management console
FRONTEND_URLhttp://localhost:3000Frontend URL for redirects
PORT8000Backend server port
BACKEND_URL[***]Backend URL (frontend container)
Observability Variables
JAEGER_HOSTjaegerJaeger tracing host
LOKI_URL[***]Loki log aggregation URL
GF_SECURITY_ADMIN_PASSWORDadminGrafana admin password

API Endpoints

Claude API Compatibility
bash
# Chat completions (Claude API compatible)
POST /v1/messages

# Streaming support
POST /v1/messages (with stream: true)
Management APIs
bash
# Account management
GET/POST/PUT/DELETE /api/accounts

# Token management with scopes
GET/POST/PUT/DELETE /api/tokens

# Conversation management
GET/POST/PUT/DELETE /api/conversations

# Authentication
POST /api/auth/login
POST /api/auth/refresh

Production Deployment

With Reverse Proxy (Recommended)
yaml
# docker-compose.prod.yml
services:
  postgres:
    image: postgres:16-alpine
    environment:
      POSTGRES_DB: claude_code
      POSTGRES_USER: claude_user
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
    volumes:
      - postgres_data:/var/lib/postgresql/data
    # No external port exposure - internal only
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U claude_user -d claude_code"]
      interval: 10s
      timeout: 5s
      retries: 5
    restart: unless-stopped

  backend:
    build: .
    expose:
      - "8000"
    environment:
      - MODE=production
      - DATABASE_URL=postgresql://claude_user:${POSTGRES_PASSWORD}@postgres:5432/claude_code
    depends_on:
      postgres:
        condition: service_healthy
    # Remove ports mapping - only internal access

  frontend:
    build:
      context: ./frontend
      args:
        BACKEND_URL: [***]
    expose:
      - "3000"
    depends_on:
      - backend
    # Remove ports mapping - only internal access

  nginx:
    image: nginx:alpine
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf:ro
      - ./certs:/etc/nginx/certs:ro
    depends_on:
      - frontend
      - backend

volumes:
  postgres_data:
Resource Limits
yaml
services:
  postgres:
    deploy:
      resources:
        limits:
          cpus: '1'
          memory: 512M
        reservations:
          cpus: '0.25'
          memory: 128M

  backend:
    deploy:
      resources:
        limits:
          cpus: '2'
          memory: 1G
        reservations:
          cpus: '0.5'
          memory: 256M

  frontend:
    deploy:
      resources:
        limits:
          cpus: '1'
          memory: 512M
        reservations:
          cpus: '0.25'
          memory: 128M

Commands Reference

bash
# Pull latest image
docker pull justinluu132/claude-code:latest

# Start services (detached)
docker-compose up -d

# View logs
docker-compose logs -f
docker-compose logs -f postgres
docker-compose logs -f backend
docker-compose logs -f frontend

# Stop services
docker-compose down

# Restart a service
docker-compose restart backend
docker-compose restart postgres

# Rebuild and restart
docker-compose up -d --build

# Remove all data (⚠️ destructive)
docker-compose down -v

# Shell into containers
docker-compose exec postgres /bin/bash
docker-compose exec backend /bin/bash
docker-compose exec frontend /bin/sh

# Check resource usage
docker stats

# Database operations (PostgreSQL)
docker-compose exec postgres psql -U claude_user -d claude_code

# Database operations (SQLite - if using DATABASE_URL="")
docker-compose exec backend sqlite3 /app/data/data.sqlite3

Troubleshooting

Container won't start
bash
# Check logs for all services
docker-compose logs postgres
docker-compose logs backend
docker-compose logs frontend

# Verify .env file exists and has correct MODE
cat .env

# Check port conflicts
lsof -i :5432
lsof -i :8000
lsof -i :3000
Database issues
bash
# Check PostgreSQL is running and healthy
docker-compose ps postgres

# Check PostgreSQL logs
docker-compose logs postgres

# Test PostgreSQL connection
docker-compose exec postgres pg_isready -U claude_user -d claude_code

# For SQLite (if using DATABASE_URL="")
mkdir -p ./data
chmod 755 ./data
Frontend can't connect to backend
bash
# Verify backend is healthy
curl http://localhost:8000/healthz

# Check internal network
docker-compose exec frontend wget -q -O - [***]

# Verify API endpoints
curl http://localhost:8000/v1/messages -X POST -H "Content-Type: application/json"
Authentication issues
bash
# Check MODE setting
docker-compose exec backend env | grep MODE

# Verify admin password
curl -X POST http://localhost:8000/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username":"admin","password":"your-password"}'

Image Size

ImageSize (approx.)Contents
PostgreSQL~90 MBPostgreSQL 16 Alpine
Backend~180 MBPython 3.11 slim + compiled bytecode
Frontend~140 MBNode.js 20 slim + standalone build

Features

Chat Interface
  • Full ***-style UI with conversation management
  • Real-time streaming responses with thinking mode visualization
  • AI-generated conversation titles
  • Message persistence and history
Admin Dashboard
  • Token management with scopes and rate limiting
  • Account management with usage analytics
  • System monitoring and health checks
  • Audit logging and security features
API Compatibility
  • Full Claude API compatibility (/v1/messages)
  • Amazon Q Developer integration with streaming
  • Multi-database support for scalability
  • Production-ready authentication and authorization

Contact

For questions, issues, or support:

📧 Email: ***


Claude Code — A sophisticated bridge converting Amazon Q Developer into Claude API compatibility.

查看更多 claude-code 相关镜像 →
kasmweb/claude-code logo
kasmweb/claude-code
kasmweb
Claude Code CLI - Anthropic's CLI for interacting with Claude AI models from your terminal
122 pulls
上次更新:5 天前
singiamtel/claude-code logo
singiamtel/claude-code
singiamtel
暂无描述
10K+ pulls
上次更新:9 个月前
idachev/claude-code logo
idachev/claude-code
idachev
暂无描述
10K+ pulls
上次更新:5 天前
bohunn/claude-code logo
bohunn/claude-code
bohunn
暂无描述
8.4K pulls
上次更新:4 个月前
etdofresh/claude-code logo
etdofresh/claude-code
etdofresh
暂无描述
4.8K pulls
上次更新:5 个月前
peterkuczera/claude-code logo
peterkuczera/claude-code
peterkuczera
Run Claude Code in a Docker container
2.3K pulls
上次更新:6 天前

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

Dev Containers

VS Code Dev Containers 配置

MacOS OrbStack

MacOS OrbStack 容器配置

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
justinluu132/claude-code
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
咨询镜像拉取问题请 提交工单,官方技术交流群:1072982923
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
咨询镜像拉取问题请提交工单,官方技术交流群:
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.