在我折腾 NAS 的过程中,我一直在寻找一套可以真正实现“自动化+效率提升”的工具,直到我接触到 OpenClaw,才意识到很多本来需要手动完成的操作其实都能完全自动化。不过,有个问题是:网上几乎找不到完整的、可以实践的 NAS 部署教程,或者是步骤不完整,或者关键配置略过,导致新手很容易被卡住。
本文我将手把手从零开始,带你完成 OpenClaw 在 NAS 上的完整部署,包括环境配置、Docker 设置、网络访问、Telegram 配置等关键步骤。同时,我会把自己在部署过程中遇到的常见问题和解决方案一起分享,比如镜像拉取失败、权限设置问题、端口无法访问、机器人不响应等,确保你可以直接照着操作。
如果你符合以下情况,这篇文章对你会很有帮助:
第一次在 NAS 上部署 OpenClaw,不知道从何入手 已经成功部署,但 Telegram 等功能无法正常使用 经常遇到各种错误,无法定位问题所在 希望搭建一个长期稳定的自动化系统
这篇文章偏重于“实战复盘”,相比其他零散教程,不仅告诉你具体操作,还会分析可能出现的问题,帮助你避免踩坑。
现在,我们开始从最基础的环境准备讲起。
部署步骤:
在 NAS 上安装 Docker 管理器进入套件中心,找到“Container Manager”进行安装。
下载安装 OpenClaw 安装包在镜像仓库中搜索关键词:openclaw,下载 1panel openclaw 镜像。
特别提示:如果你没有科学上网,建议使用国内加速镜像来加速下载,避免下载速度过慢。设置方法:进入左侧镜像仓库设置,添加新的加速镜像仓库 URL 为 https://docker.1ms.run。
安装并启动 OpenClaw 容器在下载的镜像中选择 1panel/openclaw,右键点击运行。
配置容器时,需设置端口映射(例如18789端口)和容器空间,确保网络模式设置为
host,否则外部无法访问。执行命令
openclaw gateway --allow-unconfigured,然后点击完成来创建容器。启用 NAS 的 SSH 远程访问在控制面板中找到“终端机和 SNMP”,启用 SSH 功能,以便通过 SSH 客户端连接 NAS。
下载安装 SSH 终端连接工具下载并使用免费的 WindTerm 来连接 NAS。
连接时输入 NAS 的 IP 地址、端口(默认22),以及用户名和密码进行登录。
登录后执行
sudo -i获取管理员权限,并用命令docker ps查看当前安装的 OpenClaw 容器。进入 OpenClaw 容器进行配置输入命令
sudo docker exec -it openclaw bash进入 OpenClaw 容器,注意替换容器名称为自定义名称。然后执行
openclaw onboard完成后续配置。如果你打算连接 Telegram 机器人,需要在 @BotFather 上创建机器人并进行配对。
在其他电脑或外网访问 OpenClaw进入容器执行
openclaw config,将 Gateway 模式改为 LAN 模式。修改后,OpenClaw 的面板地址将变成 NAS 的 IP 地址,如
192.168.1.113,这一点非常重要,决定了你是否可以从外部访问。如果第一次访问时出现跨域权限错误,执行以下命令解决:
bash docker exec openclaw node openclaw.mjs config set gateway.controlUi.allowedOrigins '["http://192.168.1.113:18789","http://localhost:18789"]'注意替换命令中的 IP 地址为你自己的 NAS 地址。
执行后稍等容器重启,若访问时提示需要 HTTPS 协议,执行命令禁用此限制:
bash docker exec openclaw node openclaw.mjs config set gateway.controlUi.dangerouslyDisableDeviceAuth true重启容器后,等待片刻,你就能正常访问 OpenClaw 的后台了。
夜雨聆风