• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • YouClaw
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
思想人生从关注生活开始
博客园    首页    新随笔    联系   管理    订阅  订阅

别再把API Key写配置文件里了!手把手教你用.env安全配置OpenClaw(含一键复制模板)

💡 写在前面:
你是不是也遇到过:OpenClaw装好了,却死活连不上 DeepSeek 或 Kimi?
或者在群里看到别人说“密钥泄露”,吓得赶紧去改密码?
2026年新版 OpenClaw 已经不再推荐把敏感信息写在 openclaw.json 里了!
今天这篇保姆级教程,带你用最安全的 .env 方式,3分钟搞定所有环境变量配置,顺便送你一份**“复制即用”的配置模板**,彻底告别报错!

🚀 为什么要用 .env 文件?(30秒看懂)

以前我们喜欢把密码直接写在配置文件里,方便是方便,但有两个大坑:

  1. 不安全:一不小心把配置文件传到 GitHub,黑客直接偷走你的 API Key(这可是要扣钱的!)。
  2. 难维护:换个环境(比如从本地移到服务器),得手动改一堆文件,容易手滑改错。

现在的最佳实践:
把所有敏感信息(密码、Key、代理)单独放在一个名叫 .env 的文件里。

  • ✅ 安全:Docker 自动读取,不落地到代码库。
  • ✅ 清爽:配置文件只留逻辑,.env 只留数据。
  • ✅ 灵活:换环境只需换一个 .env 文件,无需动核心配置。

🛠️ 第一步:创建你的“万能钥匙” (.env 文件)

别自己手写了,容易漏字符!直接复制下面这份模板,保存为 .env 文件(注意文件名前面有个点,且没有后缀名)。

👇 长按复制下方代码块 👇

# ================= 核心安全区 (必填) =================
# 后台登录密码 (建议包含大小写字母+数字+符号)
OPENCLAW_ADMIN_PASSWORD=MyStrongPass2026!

# 系统加密密钥 (生成方法: 在终端运行 openssl rand -hex 32)
OPENCLAW_SECRET_KEY=这里填入你生成的64位随机字符串

# 运行环境 (生产环境务必设为 production)
OPENCLAW_ENV=production

# ================= 大模型配置区 (二选一) =================
# 选项A: 使用 DeepSeek (国内速度快,性价比高)
LLM_PROVIDER=deepseek
DEEPSEEK_API_KEY=sk-这里填入你的DeepSeek密钥

# 选项B: 使用 阿里云百炼 (通义千问)
# LLM_PROVIDER=aliyun
# ALIYUN_DASHSCOPE_API_KEY=sk-这里填入你的阿里云密钥

# ================= 网络代理区 (国内用户必填!) =================
# 如果你没有代理,请删除下面两行,否则会导致无法启动
HTTP_PROXY=http://127.0.0.1:7890
HTTPS_PROXY=http://127.0.0.1:7890
# 本地地址不需要代理
NO_PROXY=localhost,127.0.0.1,host.docker.internal

# ================= 高级选项 (可选) =================
# 日志级别 (调试时可改为 DEBUG)
LOG_LEVEL=INFO
# 开启技能沙箱 (强烈建议开启,防止恶意代码)
ENABLE_SKILL_SANDBOX=true

⚠️ 重要提示:

  1. 记得把 MyStrongPass2026! 和 sk-... 替换成你自己的真实信息!
  2. 不要删除行首的 # 号以外的内容,那是注释。
  3. 如果你没有代理软件,务必删除 HTTP_PROXY 和 HTTPS_PROXY 这两行,否则会报错!

🐳 第二步:让 Docker 读取它

有了 .env 文件,只需要在启动命令里加一行小代码。

如果你用 docker-compose (推荐)

打开你的 docker-compose.yml,确保里面有这几行:

services:
  openclaw:
    image: openclaw/core:latest
    env_file:
      - .env  # <--- 就是这一行!告诉它去读 .env 文件
    ports:
      - "8080:8080"
    # ... 其他配置保持不变

然后执行:

docker-compose up -d

如果你用 docker run 命令

直接在命令里加上 --env-file 参数:

docker run -d \
  --name openclaw \
  --env-file .env \  # <--- 加上这个参数
  -p 8080:8080 \
  openclaw/core:latest

🔍 第三步:验证是否成功(拒绝玄学)

配置完别急着用,先花10秒钟检查一下,避免“假配置”。

1. 检查变量是否进入容器
在终端运行:

docker exec -it openclaw env | grep DEEPSEEK_API_KEY
  • ✅ 成功:会输出 DEEPSEEK_API_KEY=sk-xxxx...
  • ❌ 失败:没有任何输出 -> 说明 .env 文件路径不对,或者文件名写错了(是不是写成了 .env.txt?)。

2. 查看启动日志

docker logs openclaw --tail 20
  • 寻找关键词:Configuration loaded from environment 或 Connected to LLM provider。
  • 如果看到 Fallback to default,说明没读到,请检查第一步。

3. 实战测试
登录 OpenClaw 后台,在对话框输入:“今天北京天气怎么样?”

  • 如果它能准确回答并显示调用了搜索插件 -> 恭喜,配置完美! 🎉
  • 如果提示 Missing API Key -> 请检查 Key 是否复制完整,有没有多余空格。

💣 四大“作死”行为(千万别踩!)

根据社区统计,99% 的配置失败都是因为这几个低级错误:

  1. 等号后面加空格:

    • ❌ DEEPSEEK_API_KEY = sk-xxx (错!)
    • ✅ DEEPSEEK_API_KEY=sk-xxx (对!)
    • 空格会被当成密码的一部分,导致验证失败。
  2. 特殊字符没加引号:

    • 如果密码里有 $ 或 !,在命令行启动时最好用单引号包起来:'PASSWORD=My$Pass!'。但在 .env 文件中通常不需要,除非包含特殊 Shell 字符。
  3. 改了文件没重启:

    • 修改 .env 后,必须执行 docker-compose restart 或 docker restart openclaw。环境变量只在启动瞬间读取!
  4. 代理配错了协议:

    • 访问大模型 API 用的是 HTTPS,所以必须配 HTTPS_PROXY。只配 HTTP_PROXY 是没用的!

🎁 彩蛋:一键生成随机密钥命令

不知道 OPENCLAW_SECRET_KEY 填什么?别去网上找生成器了(不安全),直接在终端运行:

  • Mac / Linux:
    openssl rand -hex 32
    
  • Windows (PowerShell):
    -join ((48..57) + (65..90) + (97..122) | Get-Random -Count 64 | ForEach-Object {[char]$_})
    

把生成的那串乱码复制进去即可!

现在,你的 OpenClaw 已经处于最安全、最高效的状态了!快去试试让它帮你干活吧! 🦞

(觉得有用?欢迎收藏,帮更多小伙伴避开配置坑!)

posted @ 2026-03-17 11:21  JackYang  阅读(4)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3