Docker部署OpenClaw详细操作指南(超全面指令清单,适合收藏)

简介
本文档提供了使用 Docker 管理 OpenClaw 服务的详细操作指南,包括启动、停止、查看状态等各种常见操作,适合新手使用。需要了解如何docker部署的可以查看上一篇OpenClaw Docker本地部署完整流程(MacBook)
环境准备
-
Docker 已安装并运行
-
Docker Compose 已安装
-
OpenClaw 配置文件已准备就绪
基本操作
1. 启动服务
命令:
# 在包含 docker-compose.yml 的目录中执行 docker compose up -d 说明:
-
-d参数表示在后台运行容器 -
首次启动时会自动拉取镜像(如果本地不存在)
-
服务启动后会监听在
http://localhost:18789
示例输出:
[+] Running 2/2 ✔ Network openclaw-docker_default Created ✔ Container openclaw Started 2. 停止服务
命令:
docker compose down 说明:
-
会停止并移除容器和网络
-
不会删除数据卷(数据会保留)
示例输出:
[+] Running 2/2 ✔ Container openclaw Removed ✔ Network openclaw-docker_default Removed 3. 重启服务
命令:
# 方法一:先停止再启动 docker compose down && docker compose up -d # 方法二:直接重启容器 docker restart openclaw 说明:
-
重启服务会应用最新的配置更改
-
数据不会丢失
4. 查看服务状态
命令:
# 查看所有容器状态 docker ps -a # 只查看 openclaw 容器状态 docker ps -a | grep openclaw 说明:
-
状态为
Up表示服务正在运行 -
状态为
Exited表示服务已停止 -
状态为
Restarting表示服务正在重启
示例输出:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7d3cd7512f70 m.daocloud.io/ghcr.io/openclaw/openclaw:latest "docker-entrypoint.s…" 2 hours ago Up 2 hours (healthy) 127.0.0.1:18789->18789/tcp openclaw 5. 查看服务日志
命令:
# 查看所有日志 docker logs openclaw # 查看最新的 100 行日志 docker logs openclaw --tail 100 # 实时查看日志(按 Ctrl+C 停止) docker logs openclaw -f 说明:
-
日志包含服务启动、运行状态、错误信息等
-
可用于排查问题
6. 进入容器
命令:
# 进入容器的 shell 环境 docker exec -it openclaw /bin/bash # 进入容器后执行单个命令 docker exec openclaw ls -la /home/node/.openclaw 说明:
-
-it参数表示交互式终端 -
进入容器后可以查看文件、执行命令等
-
退出容器使用
exit命令
高级操作
1. 查看容器详细信息
命令:
docker inspect openclaw 说明:
-
输出容器的详细配置信息
-
包括网络、挂载、环境变量等
2. 查看数据卷
命令:
# 查看所有数据卷 docker volume ls # 查看 openclaw-data 卷的详细信息 docker volume inspect openclaw-data 说明:
-
数据卷用于持久化容器数据
-
OpenClaw 的配置和数据存储在
openclaw-data卷中
3. 备份数据
命令:
# 方法一:使用 docker cp 复制数据 docker cp openclaw:/home/node/.openclaw ./openclaw-backup # 方法二:使用 tar 命令备份数据卷 docker run --rm -v openclaw-data:/data -v $(pwd):/backup busybox tar cvf /backup/openclaw-backup.tar /data 说明:
-
备份数据可以防止数据丢失
-
建议定期备份重要数据
4. 恢复数据
命令:
# 方法一:使用 docker cp 恢复数据 docker cp ./openclaw-backup/. openclaw:/home/node/.openclaw/ # 方法二:使用 tar 命令恢复数据卷 docker run --rm -v openclaw-data:/data -v $(pwd):/backup busybox tar xvf /backup/openclaw-backup.tar -C /data 说明:
-
恢复数据前确保服务已停止
-
恢复后需要设置正确的权限
5. 更新镜像
命令:
# 拉取最新镜像 docker pull m.daocloud.io/ghcr.io/openclaw/openclaw:latest # 停止并重新启动服务以使用新镜像 docker compose down && docker compose up -d 说明:
-
定期更新镜像可以获取最新的功能和安全补丁
-
更新前建议备份数据
6. 查看资源使用情况
命令:
# 查看容器的 CPU、内存使用情况 docker stats openclaw # 查看容器的磁盘使用情况 docker system df 说明:
-
监控资源使用情况可以及时发现问题
-
有助于优化容器配置
常见问题和解决方案
1. 服务启动失败
症状:
-
容器状态为
Exited -
日志中显示错误信息
解决方案:
-
查看详细日志:
docker logs openclaw -
检查配置文件是否正确
-
检查端口是否被占用:
lsof -i :18789 -
检查数据卷权限:
docker exec -u root openclaw chown -R node: node /home/node/.openclaw
2. 无法访问服务
症状:
-
浏览器访问
http://localhost:18789无响应 -
curl http://localhost:18789/healthz失败
解决方案:
-
检查服务状态:
docker ps -a | grep openclaw -
检查端口映射:
docker port openclaw -
检查容器内服务是否正常:
docker exec openclaw curl http://127.0.0.1:18789/healthz -
检查防火墙设置
3. 认证错误
症状:
-
日志中显示
HTTP 401: Invalid Authentication -
无法使用 AI 模型
解决方案:
-
检查 API key 是否正确
-
检查 API 端点是否正确(中国用户使用
https://api.moonshot.cn/v1) -
检查网络连接是否正常
4. 权限问题
症状:
-
日志中显示权限错误
-
无法写入数据
解决方案:
-
设置正确的权限:
docker exec -u root openclaw chown -R node: node /home/node/.openclaw -
检查 docker-compose.yml 中的 user 设置
示例命令汇总
启动服务 docker compose up -d
停止服务 docker compose down
重启服务 docker restart openclaw
查看状态 docker ps -a 查看日志 docker logs openclaw 进入容器 docker exec -it openclaw /bin/bash 查看数据卷 docker volume ls 备份数据 docker cp openclaw:/home/node/.openclaw ./backup 更新镜像 docker pull m.daocloud.io/ghcr.io/openclaw/openclaw: latest 查看资源使用 docker stats openclaw`
注意事项
-
数据安全:
-
定期备份重要数据保护 API key 和其他敏感信息不要将 .env 文件提交到版本控制系统
-
网络安全:
-
保持端口映射只绑定到本地接口(127.0.0.1)定期更新 Docker 镜像以获取安全补丁使用强密码和令牌
-
性能优化:
-
根据实际需求调整内存限制定期清理未使用的容器和镜像:
docker system prune监控资源使用情况,及时调整配置 -
故障排查:
-
遇到问题时首先查看日志检查网络连接和端口映射确认 API key 和配置文件正确
总结
通过本指南,您应该能够熟练使用 Docker 管理 OpenClaw 服务,包括启动、停止、查看状态等基本操作,以及备份数据、更新镜像等高级操作。