OpenClaw NAS 部署教程
约 15 分钟 |:⭐⭐(需要有一定的 Docker 部署能力)「在 NAS 上跑 OpenClaw,只能本机访问,局域网其他设备打不开?」「想在外网随时调用自己的 AI 助手,却不知道该怎么配置?,稍微有点技术基础就能搞定。🎯:OpenClaw 出于安全考虑默认只支持 localhost 访问,这个部署方案。这是本人在实际部署 NAS 环境时踩过一系列坑后整理出来的经验,参考本文可以绕过这些坑
OpenClaw NAS 部署教程:让你避免踩坑 🦦
耗时:约 15 分钟 | 难度:⭐⭐(需要有一定的 Docker 部署能力)
「在 NAS 上跑 OpenClaw,只能本机访问,局域网其他设备打不开?」「想在外网随时调用自己的 AI 助手,却不知道该怎么配置?」
本文特点:基本全前端操作,Docker 图形界面点点就能部署,稍微有点技术基础就能搞定。
🎯 本文最大的价值:OpenClaw 出于安全考虑默认只支持 localhost 访问,这个部署方案彻底解决了非 localhost 访问的问题。这是本人在实际部署 NAS 环境时踩过一系列坑后整理出来的经验,参考本文可以绕过这些坑,少走弯路。
📋 部署前准备
环境要求
| 项目 | 要求 |
|---|---|
| NAS 系统 | 群晖 DSM 7.x / 威联通 QTS 4.4+ / fnOS |
| Docker | 已安装并启用(套件中心安装) |
| 网络 | NAS 可访问互联网 & 科学上网 |
| SSH 访问 | 可选,主要用于权限问题处理 |
💡 如果使用代理上网,NAS 上的代理软件需要开启「允许局域网连接」
📦 第一步:拉取镜像
ps: 本文章主要是讲 docker 部署步骤,镜像获取简单带过
方式一:Docker 图形界面
在 NAS 上打开 Docker 套件 → 注册表,搜索 openclaw/openclaw,双击下载 latest 版本。
💡 fnOS 可直接通过图形界面拉取;群晖/威联通建议用命令行,图形界面有时会卡住。
方式二:命令行(更稳定)
SSH 登录 NAS 后执行:
# 海外网络直连
sudo docker pull ghcr.io/openclaw/openclaw:latest
# 国内需要代理(替换为你的代理地址)
sudo HTTP_PROXY=http://192.168.1.1:7890 \
HTTPS_PROXY=http://192.168.1.1:7890 \
docker pull ghcr.io/openclaw/openclaw:latest
💡 也可以先在网络好的电脑上拉取镜像,导出后上传到 NAS 加载,省时省力。
🔌 第二步:配置与运行(关键!)
⚠️ 这是最重要的一步,端口、存储、启动命令都在这里配置。
2.1 打开容器创建向导
Docker 套件 → 容器 → 创建

2.2 按顺序完成以下配置
详细步骤见下图。如果你已经有 Docker 部署基础,可直接看后面的「配置项说明」复制粘贴。
网络端口映射:
存储路径映射:
环境变量:
启动命令:
openclaw 默认只允许 localhost 访问(安全考虑),Docker 部署时需要从局域网其他设备访问,所以必须添加 --bind lan 参数:
⚠️ 这一步不能漏!漏了局域网内其他设备都访问不了。
配置项说明
| 配置项 | 值 |
|---|---|
| 端口映射 | 18789(左边填你想要的端口,右边填 18789) |
| 存储映射 | /volume1/docker/openclaw/data → /home/node/.openclaw |
/volume1/docker/openclaw/workspace → /home/node/.openclaw/workspace |
|
| 环境变量 | TZ = Asia/Shanghai |
OPENCLAW_AUTH_TOKEN = ${user_define}(可不填,自动生成) |
|
| 执行命令 | node openclaw.mjs gateway --bind lan --allow-unconfigured(可直接复制粘贴到命令行) |
🚀 第三步:启动容器
点击「完成」或「应用」,等待容器启动。
⚠️ 容器启动成功后,openclaw 会生成配置文件。此时还需要完成第四步 Gateway 配置,才能用浏览器打开控制台。
🔐 第四步:配置 Gateway 授权
容器运行后,openclaw 会自动生成 openclaw.json 配置文件。需要编辑它,添加 Gateway 配置项,让局域网内其他设备可以访问控制台。
4.1 找到配置文件
本示例路径:/volume1/docker/openclaw/data/openclaw.json
💡 实际路径取决于你第二步映射的存储路径。
4.2 添加 Gateway 配置
⚠️ 这里是合并配置,不是覆盖文件! 打开文件后,在适当位置插入以下内容,原有内容全部保留。
gateway.controlUi 中需要合并以下配置项:
{
"gateway": {
"mode": "local",
"bind": "tailnet",
"controlUi": {
"dangerouslyAllowHostHeaderOriginFallback": true,
"allowInsecureAuth": true,
"dangerouslyDisableDeviceAuth": true
},
"auth": {
"mode": "token",
"token": "openclaw自动生成的token"
}
}
}
4.3 重启容器
⚠️ 修改配置后必须重启容器才能生效。
🔧 第五步:权限处理(强烈推荐执行)
⚠️ Docker 部署下,openclaw 执行任务时需要操作文件读写 , docker部署会经常遇到权限不够的问题,导致容器启动失败或功能异常。建议在运行容器前就执行以下命令,把文件夹权限移交给 openclaw 的 node 用户
# SSH 登录 NAS 后执行 (1000 为 openclaw 在 docker 中运行的 node 用户)
sudo chown -R 1000:1000 /volume1/docker/openclaw
sudo chmod -R 755 /volume1/docker/openclaw
如果容器已经起不来,停掉容器 → 执行上面命令 → 重启容器。
🐳 需要进入容器调试?
docker exec -it -u root openclaw bash
✅ 第六步:验证与访问
查看容器状态
# 查看是否在运行
docker ps | grep openclaw
# 查看日志(排查问题用)
docker logs -f openclaw
打开控制台
浏览器访问:http://你的NAS地址:18789(实际应为你自定义的端口号)
💡 Token 从哪找?打开
openclaw.json文件,找到auth.token字段,复制后面的值。

⚡ 快速检查清单
-
✅ 镜像拉取成功
-
✅ 端口 18789 已映射
-
✅ 存储路径已挂载(两个都要)
-
✅ 执行命令已添加
--bind lan -
✅ Gateway controlUi 配置已合并(不是覆盖)
-
✅ 文件夹权限已处理
-
✅ 容器已重启
-
✅ 控制台可正常打开
💡 常见问题
Q:做了以上配置,外网还是访问不了?
⚠️ 本文配置解决的是局域网内非本机访问(同 WiFi 下其他设备访问 NAS)。人在外网想访问家里 NAS 上的 openclaw,还需要额外配置。
Q:容器起不来?
-
在docker容器界面查看日志,查看具体报错信息
-
常见原因:路径写错、端口被占用、权限不够
Q:控制台打不开?
-
检查 Token 是否正确(从
auth.token字段获取) -
重启容器:container manager 中重启 or ssh 到 NAS 执行
docker restart openclaw
Q:OPENCLAW_AUTH_TOKEN 环境变量要不要填?
- 可以不填,仅用于控制台访问时使用。
有问题欢迎留言 👇
觉得有用?转发给需要的朋友 🙌
更多推荐




所有评论(0)