
<h2>一、为什么推荐用宝塔面板来部署OpenClaw</h2>
<p>很多人听到"私有化部署"、"反向代理"这些词就头皮发麻,觉得那是程序员才需要操心的事。实际上,借助宝塔面板这个可视化运维工具,部署OpenClaw这件事完全可以交给一个刚接触服务器的小白来完成。</p>
<p>宝塔面板的核心价值在于它把Linux命令包装成了图形化操作。你不再需要记忆那些复杂的systemctl命令、vim编辑技巧,只需要点几下鼠标就能完成80%的运维工作。而OpenClaw作为一款注重隐私保护的AI工具,本地部署意味着你的数据不会经过任何第三方服务器——对话记录、模型调用日志全都留在你自己的机器上。</p>
<p>这次教程的核心思路是这样的:先用宝塔安装Docker环境,再通过Docker容器化部署OpenClaw,最后配置反向代理和SSL证书。整个过程不需要你写一行shell脚本。</p>
<h2>二、环境准备:服务器与宝塔面板安装</h2>
<h3>2.1 服务器选择建议</h3>
<p>如果你是第一次部署,建议选择2核4G以上的云服务器,系统选择CentOS 7.6或Ubuntu 20.04。硬盘空间至少50G,因为OpenClaw本体加上后续可能安装的模型文件会比较占地方。这里有个坑要提醒:不要选那些超低价的学生机,它们的IO性能普遍较差,AI应用运行时会有明显卡顿。</p>
<p>以阿里云ECS为例,购买完成后会收到一个初始密码,然后通过SSH连接服务器:</p>
<pre style="background:#f5f5f5;padding:15px;border-radius:8px;overflow-x:auto;">ssh root@你的服务器IP
# 输入密码后连接成功</pre>
<h3>2.2 一键安装宝塔面板</h3>
<p>宝塔官方提供了一键安装脚本,根据你的系统选择对应的命令:</p>
<pre style="background:#f5f5f5;padding:15px;border-radius:8px;overflow-x:auto;"># CentOS系统
yum install -y wget && wget -O install.sh https://download.bt.cn/install/install_6.0.sh && sh install.sh
# Ubuntu/Debian系统
wget -O install.sh https://download.bt.cn/install/install_6.0.sh && bash install.sh</pre>
<p>安装过程中会提示你输入一个端口号(默认8888)和确认安装,直接回车选择默认即可。大约3-5分钟后安装完成,界面上会显示登录地址和初始用户名密码,把这些信息保存好。</p>
<p>浏览器访问 http://你的服务器IP:8888,用刚才的账号密码登录。第一次登录会让你绑定宝塔账号,如果没有可以跳过直接使用。登录后的主界面左侧有一排菜单,我们需要关注的是"软件商店"。</p>
<h2>三、通过Docker安装OpenClaw</h2>
<h3>3.1 在宝塔里安装Docker</h3>
<p>宝塔面板的软件商店里直接有Docker管理器,点一下安装即可。安装完成后打开Docker管理器,如果提示"未安装Docker",点击安装按钮等待2-3分钟。</p>
<p>安装完成后切换到"镜像管理"标签,点击"获取镜像"按钮。在弹出的对话框里填写镜像名称:</p>
<pre style="background:#f5f5f5;padding:15px;border-radius:8px;overflow-x:auto;">openclaw/openclaw:latest</pre>
<p>这个镜像比较大(通常2-3GB),下载速度取决于你的服务器带宽。如果下载超时,可以尝试用命令行手动拉取:</p>
<pre style="background:#f5f5f5;padding:15px;border-radius:8px;overflow-x:auto;">docker pull openclaw/openclaw:latest</pre>
<h3>3.2 创建并启动容器</h3>
<p>镜像下载完成后,切换到"容器管理"标签,点击"创建容器"按钮。填写以下参数:</p>
<ul>
<li><strong>镜像</strong>:选择刚才下载的 openclaw/openclaw:latest</li>
<li><strong>容器名称</strong>:openclaw(自定义即可)</li>
<li><strong>端口映射</strong>:主机端口 8080,容器端口 3000(tcp)</li>
<li><strong>目录映射</strong>:/data 映射到 /www/openclaw/data(用于持久化存储)</li>
<li><strong>内存限制</strong>:建议至少1024MB</li>
<li><strong>重启策略</strong>:选择"总是",确保服务器重启后容器自动启动</li>
</ul>
<p>点击"提交"后容器就创建好了。回到容器列表,找到 openclaw 这行,点击右侧的"启动"按钮。等待10秒左右,状态会变成"运行中"。</p>
<p>这时候你可以通过 http://你的服务器IP:8080 访问OpenClaw了。但默认只能用HTTP访问,而且直接暴露8080端口安全性不佳,所以我们需要配置Nginx反向代理。</p>
<h3>3.3 验证安装是否成功</h3>
<p>打开浏览器访问 http://你的服务器IP:8080,如果看到OpenClaw的登录界面,说明基本部署成功。如果页面打不开,先在宝塔的"安全"菜单里放行8080端口,同时检查容器日志:</p>
<pre style="background:#f5f5f5;padding:15px;border-radius:8px;overflow-x:auto;">docker logs openclaw --tail 50</pre>
<p>日志里如果出现"Server started on port 3000"之类的字样,说明应用本身运行正常,问题大概率在网络层面。</p>
<h2>四、反向代理与安全加固</h2>
<h3>4.1 配置Nginx反向代理</h3>
<p>在宝塔的"网站"菜单里点击"添加站点",填入你的域名(如果没有域名就填服务器IP)。网站分类选择"静态网站",PHP版本选择"纯静态"即可。</p>
<p>站点创建完成后,点击站点名称进入设置页面,选择"反向代理"标签,点击"添加反向代理"。配置如下:</p>
<ul>
<li><strong>代理名称</strong>:openclaw</li>
<li><strong>目标URL</strong>:http://127.0.0.1:8080</li>
<li><strong>发送域名</strong>:$host</li>
</ul>
<p>保存后,你就可以通过 http://你的域名 直接访问OpenClaw了。反向代理的好处是:所有外部请求先到Nginx,再由Nginx转发给Docker容器,这样容器不需要暴露在公网上。</p>
<h3>4.2 申请SSL证书启用HTTPS</h3>
<p>安全加固的第二步是启用HTTPS。还是在站点设置页面,选择"SSL"标签。如果你的域名已经备案且解析到了服务器,点击"Let's Encrypt"按钮,申请一个免费的SSL证书。</p>
<p>申请成功后,记得打开"强制HTTPS"开关。这样即使用户输入 http://,也会自动跳转到 https://,避免明文传输带来的风险。</p>
<h3>4.3 防火墙端口管理</h3>
<p>部署完成后,务必在宝塔的"安全"菜单里做一次端口检查。只保留以下端口对外开放:</p>
<ul>
<li><strong>22</strong>:SSH连接(建议修改为其他端口或限制IP访问)</li>
<li><strong>80/443</strong>:HTTP/HTTPS(必须开放)</li>
<li><strong>8888</strong>:宝塔面板(建议通过IP白名单限制)</li>
</ul>
<p>8080端口的Docker映射可以直接删掉,因为现在外部访问都通过Nginx走80/443端口了。云服务器的安全组也要同步调整,只放行必要的端口。</p>
<h2>五、私有化部署后的日常维护</h2>
<h3>5.1 数据备份策略</h3>
<p>私有化部署的一个好处是数据完全可控,但同时也需要你自己负责备份。宝塔面板有"计划任务"功能,可以定期备份网站文件和数据库。对于OpenClaw来说,最重要的数据是 /www/openclaw/data 目录下的配置和对话记录。</p>
<p>建议每周执行一次备份任务,备份文件存放到独立的云存储或本地移动硬盘。有个小技巧:可以把备份任务设置成每次执行后自动删除7天前的旧备份,避免硬盘被撑满。</p>
<h3>5.2 版本更新流程</h3>
<p>当OpenClaw发布新版本时,更新流程很简单。先在Docker管理器里停止旧容器,删除容器但保留镜像(不要勾选"删除镜像"),然后重新拉取新镜像:</p>
<pre style="background:#f5f5f5;padding:15px;border-radius:8px;overflow-x:auto;"># 停止容器
docker stop openclaw
# 删除容器(保留镜像)
docker rm openclaw
# 拉取最新镜像
docker pull openclaw/openclaw:latest
# 重新创建容器(参数和之前一样)</pre>
<p>由于我们之前做了目录映射(/www/openclaw/data),所有用户数据和配置都会保留,更新不会影响已有数据。</p>
<h3>5.3 常见问题快速排查</h3>
<p>最后分享几个我在部署过程中遇到过的问题及解决方案:</p>
<ul>
<li><strong>页面502 Bad Gateway</strong>:检查Docker容器是否还在运行,Nginx配置的目标端口是否正确。</li>
<li><strong>访问很慢加载不出来</strong>:查看容器内存是否够用,尝试在容器设置里把内存限制提高到2048MB。</li>
<li><strong>SSL证书申请失败</strong>:确认域名已正确解析,用ping命令测试DNS是否生效。</li>
</ul>
<p>遇到问题时先查日志,Docker日志、Nginx错误日志、宝塔系统日志三份日志对照看,90%的问题都能定位。</p>
<h2>总结</h2>
<p>通过宝塔面板加Docker的组合,OpenClaw的私有化部署其实没有想象中那么复杂。核心就是四步:安装宝塔→装Docker→部署OpenClaw容器→配置Nginx反向代理和SSL。整个过程不需要写代码,只需要点鼠标填参数。</p>
<p>私有化部署完成后,你拥有了一个完全可控的AI工具,所有数据都在自己服务器上。后续如果需要团队共享使用,只需要在宝塔里创建多个站点或者配置不同的子域名即可。</p>
<p style="color:#888;font-size:12px;text-align:center;">整理自 OpenClaw 官方文档 | 2026年06月29日</p>
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...