欢迎光临
我们一直在努力

Ubuntu 部署 Claude Code + DeepSeek 配置完全指南

Ubuntu 部署 Claude Code + DeepSeek 配置完全指南

适用环境:Ubuntu 20.04/22.04/24.04(x86_64) 测试环境:PyTorch 2.2.2 + CUDA 11.8 + cuDNN 8 + Ubuntu 22.04 更新时间:2026-06-22


一、环境准备

Claude Code 本身与 PyTorch/CUDA 无直接依赖,它是一个终端 AI 助手,运行在用户态。安装前确保:

  • Ubuntu 20.04+(x86_64 或 ARM64)
  • 网络可访问 npm 镜像(清华/淘宝)
  • 4GB+ 内存

1.1 安装 Node.js(20 LTS)

由于 claude.ai/install.sh 官方脚本在部分地区受限,推荐使用 npm 全局安装方式。

通过清华大学镜像安装 Node.js:

# 下载清华镜像预编译的 Node.js 二进制包
cd /usr/local
curl -O https://mirrors.tuna.tsinghua.edu.cn/nodejs-release/v20.15.0/node-v20.15.0-linux-x64.tar.xz
tar -xvf node-v20.15.0-linux-x64.tar.xz

# 创建软链接到系统 PATH
ln -sf /usr/local/node-v20.15.0-linux-x64/bin/node /usr/local/bin/node
ln -sf /usr/local/node-v20.15.0-linux-x64/bin/npm /usr/local/bin/npm

# 验证
node –version # v20.15.0
npm –version # 10.7.0

1.2 配置 npm 国内镜像(加速)

npm config set registry https://registry.npmmirror.com


二、安装 Claude Code

npm install -g @anthropic-ai/claude-code

验证安装:

claude –version
claude doctor

注意:官方推荐的 curl -fsSL https://claude.ai/install.sh | bash 方式在部分地区会返回 App unavailable in region 错误,因此本文采用 npm 安装作为可靠替代方案。


三、配置 DeepSeek API

3.1 获取 DeepSeek API Key

  • 访问 platform.deepseek.com
  • 注册/登录 → API Keys → 创建新密钥
  • 复制密钥(格式为 sk-…),只显示一次,请妥善保存
  • 3.2 一键配置脚本

    创建启动脚本,将 DeepSeek Key 硬编码其中(适合个人服务器/容器使用):

    cat > start-claude-deepseek.sh << 'EOF'
    #!/bin/bash

    # ========== 配置区 ==========
    # 替换为你的真实 DeepSeek API Key
    DEEPSEEK_KEY="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
    # ===========================

    set -e

    echo "========================================"
    echo " Claude Code + DeepSeek 启动脚本"
    echo "========================================"
    echo ""

    # 检查 Key 是否已修改
    if [[ "$DEEPSEEK_KEY" == "sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" ]]; then
    echo "❌ 错误:你还没有配置 DeepSeek API Key"
    echo " 请编辑本脚本,将 DEEPSEEK_KEY 的值替换为你的真实 Key"
    exit 1
    fi

    # 检查 Claude Code
    if ! command -v claude &> /dev/null; then
    echo "❌ 错误:未找到 claude 命令"
    exit 1
    fi
    echo "✅ Claude Code 已安装"

    # 写入 ~/.bashrc(首次运行时写入,避免重复)
    if ! grep -q "CLAUDE_CODE_DEEPSEEK_CONFIGURED" ~/.bashrc 2>/dev/null; then
    echo "📝 首次运行:写入环境变量到 ~/.bashrc …"
    cat >> ~/.bashrc << ENVEOF

    # === Claude Code DeepSeek Config [CLAUDE_CODE_DEEPSEEK_CONFIGURED] ===
    export ANTHROPIC_BASE_URL="https://api.deepseek.com/anthropic"
    export ANTHROPIC_AUTH_TOKEN="$DEEPSEEK_KEY"
    export ANTHROPIC_API_KEY="$DEEPSEEK_KEY"
    export ANTHROPIC_MODEL="deepseek-v4-pro[1m]"
    export ANTHROPIC_DEFAULT_OPUS_MODEL="deepseek-v4-pro[1m]"
    export ANTHROPIC_DEFAULT_SONNET_MODEL="deepseek-v4-pro[1m]"
    export ANTHROPIC_DEFAULT_HAIKU_MODEL="deepseek-v4-flash"
    export CLAUDE_CODE_SUBAGENT_MODEL="deepseek-v4-flash"
    export CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC="1"
    export CLAUDE_CODE_EFFORT_LEVEL="max"
    # === End Claude Code Config ===
    ENVEOF
    echo "✅ ~/.bashrc 已更新"
    else
    echo "✅ ~/.bashrc 已配置过,跳过"
    fi

    # 写入 ~/.claude/settings.json(持久化配置,双重保险)
    echo "📝 写入 ~/.claude/settings.json …"
    mkdir -p ~/.claude
    cat > ~/.claude/settings.json << JSONEOF
    {
    "env": {
    "ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic",
    "ANTHROPIC_AUTH_TOKEN": "$DEEPSEEK_KEY",
    "ANTHROPIC_API_KEY": "$DEEPSEEK_KEY",
    "ANTHROPIC_MODEL": "deepseek-v4-pro[1m]",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "deepseek-v4-pro[1m]",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "deepseek-v4-pro[1m]",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "deepseek-v4-flash",
    "CLAUDE_CODE_SUBAGENT_MODEL": "deepseek-v4-flash",
    "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1",
    "CLAUDE_CODE_EFFORT_LEVEL": "max"
    }
    }
    JSONEOF
    echo "✅ settings.json 已更新"

    # 当前会话立即生效
    export ANTHROPIC_BASE_URL="https://api.deepseek.com/anthropic"
    export ANTHROPIC_AUTH_TOKEN="$DEEPSEEK_KEY"
    export ANTHROPIC_API_KEY="$DEEPSEEK_KEY"
    export ANTHROPIC_MODEL="deepseek-v4-pro[1m]"
    export ANTHROPIC_DEFAULT_OPUS_MODEL="deepseek-v4-pro[1m]"
    export ANTHROPIC_DEFAULT_SONNET_MODEL="deepseek-v4-pro[1m]"
    export ANTHROPIC_DEFAULT_HAIKU_MODEL="deepseek-v4-flash"
    export CLAUDE_CODE_SUBAGENT_MODEL="deepseek-v4-flash"
    export CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC="1"
    export CLAUDE_CODE_EFFORT_LEVEL="max"

    # 测试 DeepSeek 连接
    echo ""
    echo "🧪 测试 DeepSeek 连接 …"
    TEST=$(curl -s -w "\\n%{http_code}" \\
    -H "Authorization: Bearer $DEEPSEEK_KEY" \\
    -H "Content-Type: application/json" \\
    -d '{"model":"deepseek-v4-pro[1m]","messages":[{"role":"user","content":"Hi"}],"max_tokens":5}' \\
    https://api.deepseek.com/v1/chat/completions 2>/dev/null || echo "CURL_FAILED")

    CODE=$(echo "$TEST" | tail -n1)
    if [[ "$TEST" == "CURL_FAILED" ]]; then
    echo "⚠️ 网络测试失败,但配置已保存"
    elif [[ "$CODE" == "200" ]]; then
    echo "✅ DeepSeek API 连接正常"
    elif [[ "$CODE" == "401" ]]; then
    echo "⚠️ API Key 无效 (401),请检查 Key"
    else
    echo "ℹ️ DeepSeek 返回 HTTP $CODE"
    fi

    # 启动 Claude Code
    echo ""
    echo "========================================"
    echo " 🚀 启动 Claude Code …"
    echo "========================================"
    echo ""
    echo "💡 提示:输入 /status 查看当前模型配置"
    echo " 输入 'hi' 测试 DeepSeek 是否正常回复"
    echo ""
    claude
    EOF

    chmod +x start-claude-deepseek.sh

    3.3 修改脚本填入你的 Key

    nano start-claude-deepseek.sh

    找到这一行:

    DEEPSEEK_KEY="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

    将 sk-xxxxxxxx… 替换为你的真实 DeepSeek API Key,保存退出(Ctrl+O → Ctrl+X)。

    3.4 运行脚本

    bash start-claude-deepseek.sh

    首次运行会自动完成所有配置并启动 Claude Code。后续直接运行同一命令即可。


    四、日常使用命令

    4.1 标准交互模式(推荐)

    # 进入项目目录后启动
    cd /path/to/your-project
    bash start-claude-deepseek.sh

    4.2 全权自动模式(非 root 用户)

    如果你创建了普通用户,可以使用 –dangerously-skip-permissions 跳过所有确认提示:

    claude –dangerously-skip-permissions

    ⚠️ 安全警告:此模式下 Claude Code 会自动执行文件编辑和命令运行,不会询问确认。请确保在正确的项目目录,且代码已备份。

    4.3 在 Claude Code 内部常用命令

    命令作用
    /status 查看当前模型、权限和连接状态
    /auto-accept 开启自动接受所有编辑建议(root 用户推荐)
    /init 生成 CLAUDE.md,让 Claude 深度理解项目结构
    /clear 清空对话历史
    /cost 查看本次会话的 API 消耗

    五、root 用户特殊处理

    Claude Code 出于安全考虑,禁止 root 用户使用 –dangerously-skip-permissions。

    方案 A:创建普通用户(推荐)

    # 创建用户
    useradd -m -s /bin/bash dev

    # 切换用户
    su – dev

    # 确保 node 和 claude 在 PATH
    export PATH="/usr/local/node-v20.15.0-linux-x64/bin:$HOME/.local/bin:$PATH"

    # 复制配置(如需要)
    mkdir -p ~/.claude
    cp /root/.claude/settings.json ~/.claude/settings.json 2>/dev/null || true

    # 现在可以全权运行
    claude –dangerously-skip-permissions

    方案 B:root 下使用 /auto-accept

    claude

    进入后输入:

    /auto-accept

    方案 C:root 下使用 个人推荐这个

    claude –permission-mode acceptEdits –allowed-tools "Bash,Read,Write,Edit,Glob,Grep"


    六、模型配置说明

    环境变量说明推荐值
    ANTHROPIC_BASE_URL DeepSeek 兼容接口地址 https://api.deepseek.com/anthropic(不要加尾部斜杠或 /v1)
    ANTHROPIC_MODEL 主模型 deepseek-v4-pro[1m]
    ANTHROPIC_DEFAULT_SONNET_MODEL 中等复杂度任务 deepseek-v4-pro[1m]
    ANTHROPIC_DEFAULT_HAIKU_MODEL 简单/子代理任务 deepseek-v4-flash
    CLAUDE_CODE_SUBAGENT_MODEL 子代理模型 deepseek-v4-flash
    CLAUDE_CODE_EFFORT_LEVEL 推理努力程度 max

    [1m] 后缀显式请求 1M 上下文窗口,处理大代码库时建议带上。


    七、常见问题排查

    问题原因解决方案
    bash: line 1: syntax error near unexpected token '<' 官方安装脚本受地区限制 改用本文的 npm 安装方式
    GnuTLS recv error (-110) GitHub 访问受限 用清华镜像安装 Node.js
    –dangerously-skip-permissions cannot be used with root 安全限制 创建普通用户,或进入后用 /auto-accept
    API Error: streaming failed 流式传输失败 添加 export CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK=1
    401 Unauthorized API Key 无效 同时设置 ANTHROPIC_AUTH_TOKEN 和 ANTHROPIC_API_KEY 为同一 Key
    404 model not found 模型名称错误 使用 deepseek-v4-pro[1m] 而非旧版 deepseek-chat

    八、安全建议

  • 文件权限:脚本包含 API Key,建议设置 chmod 600 start-claude-deepseek.sh
  • 不要上传:切勿将含 Key 的脚本提交到 GitHub 或共享给他人
  • 定期轮换:在 DeepSeek 平台定期更换 API Key
  • 成本监控:使用 /cost 命令查看消耗,避免意外高额账单

  • 九、快速检查清单

    部署完成后,逐项确认:

    • Node.js 20+ 已安装 (node –version)
    • Claude Code 已安装 (claude –version)
    • DeepSeek API Key 已填入脚本
    • 脚本已运行并测试连接成功
    • ~/.bashrc 已包含环境变量配置
    • ~/.claude/settings.json 已写入
    • 进入 Claude Code 后 /status 显示 DeepSeek 模型
    • 输入 hi 能正常收到 DeepSeek 回复

    本文基于 Claude Code 官方文档及 DeepSeek API 兼容接口实践整理。

    赞(0)
    未经允许不得转载:171主机测评 » Ubuntu 部署 Claude Code + DeepSeek 配置完全指南
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址