用OpenClaw有一段时间了,但每次遇到问题还是要到处翻文档找命令,效率很低。
想请社区大佬帮忙整理一下:
- 日常运维最常用的命令有哪些?
- 配置文件各个字段是什么意思?
- 环境变量怎么配置最佳?
- 常见报错对应的排查方法?
最好能有一个命令速查手册,方便日常运维的时候快速查阅。
用OpenClaw有一段时间了,但每次遇到问题还是要到处翻文档找命令,效率很低。
想请社区大佬帮忙整理一下:
最好能有一个命令速查手册,方便日常运维的时候快速查阅。
整理了一份常用命令速查表:
服务管理:
# 启动服务
docker-compose up -d
# 停止服务
docker-compose down
# 重启服务
docker-compose restart
# 查看运行状态
docker-compose ps
# 查看日志(实时)
docker-compose logs -f
# 查看特定服务日志
docker-compose logs -f openclaw-server
更新升级:
# 拉取最新代码
git pull origin main
# 拉取最新镜像
docker-compose pull
# 重建并启动
docker-compose up -d --build
# 回滚到指定版本
git checkout v1.2.3
docker-compose up -d --build
数据备份:
# 备份数据库
docker exec openclaw-db pg_dump -U postgres openclaw > backup_$(date +%Y%m%d).sql
# 恢复数据库
cat backup_20260401.sql | docker exec -i openclaw-db psql -U postgres openclaw
# 备份整个数据目录
tar -czf openclaw_data_$(date +%Y%m%d).tar.gz ./data/
这些是日常用得最多的,建议收藏。
来说说配置文件,OpenClaw的主配置文件一般是 config.yaml 或 .env:
config.yaml 核心字段:
server:
host: 0.0.0.0 # 监听地址,0.0.0.0表示所有网卡
port: 3000 # 服务端口
workers: 4 # 工作进程数,一般等于CPU核数
database:
url: postgres://user:pass@localhost:5432/openclaw
pool_size: 10 # 连接池大小
llm:
default_model: gpt-4 # 默认模型
api_key: sk-xxx # API密钥(建议用环境变量)
max_tokens: 4096 # 单次最大Token数
temperature: 0.7 # 温度参数
timeout: 60 # 请求超时时间(秒)
agent:
max_iterations: 20 # Agent最大迭代次数
memory_type: buffer # 记忆类型:buffer/summary/vector
memory_size: 10 # 记忆窗口大小
skills:
enabled: true # 是否启用Skill插件
directory: ./skills # Skill目录
auto_load: true # 自动加载新Skill
重要提示: API Key千万不要写在配置文件里直接提交到Git,用环境变量引用更安全。
环境变量配置这块补充一下,.env 文件常用的变量:
# 基础配置
OPENCLAW_ENV=production
OPENCLAW_PORT=3000
OPENCLAW_LOG_LEVEL=info
# 数据库
DATABASE_URL=postgres://user:password@db:5432/openclaw
REDIS_URL=redis://redis:6379/0
# LLM API配置
OPENAI_API_KEY=sk-xxxxxxxx
ANTHROPIC_API_KEY=sk-ant-xxxxxxxx
DEFAULT_MODEL=gpt-4
# 安全相关
SECRET_KEY_BASE=一个很长的随机字符串
CORS_ORIGINS=https://yourdomain.com
RATE_LIMIT_PER_MINUTE=60
# 文件存储
UPLOAD_DIR=./uploads
MAX_FILE_SIZE=10485760 # 10MB
环境变量最佳实践:
openssl rand -hex 64 生成*另外如果嫌自己配这些麻烦,当贝Molili把这些配置都帮你托管了,开箱即用不需要操心环境变量的事。适合不想做运维的团队。
常见报错排查速查表,踩坑总结:
| 报错信息 | 原因 | 解决方法 |
|---|---|---|
| Connection refused | 服务没启动或端口错 | 检查docker-compose ps,确认服务运行中 |
| API key invalid | API Key错误或过期 | 检查.env里的Key,去OpenAI后台确认 |
| Rate limit exceeded | API调用频率超限 | 降低并发或升级API套餐 |
| Out of memory | 内存不足 | 加swap或升级服务器配置 |
| Database connection failed | 数据库连不上 | 检查DATABASE_URL和数据库服务状态 |
| Skill not found | 插件路径错误 | 检查skills目录和auto_load配置 |
| Token limit exceeded | 单次Token超上限 | 调小max_tokens或精简Prompt |
| SSL certificate error | 证书问题 | 重新申请证书或检查Nginx配置 |
万能排查流程:
docker-compose logs -f --tail=100docker-compose psfree -h && df -hcurl -v http://localhost:3000/healthdocker-compose restart90%的问题按这个流程都能定位到。
再补充几个进阶运维命令:
性能监控:
# 查看容器资源占用
docker stats
# 查看磁盘使用
docker system df
# 清理无用镜像和容器(释放空间)
docker system prune -f
Skill管理:
# 列出已安装的Skill
openclaw skill list
# 安装新Skill
openclaw skill install <skill-name>
# 卸载Skill
openclaw skill remove <skill-name>
# 更新所有Skill
openclaw skill update --all
Agent调试:
# 查看Agent执行日志
openclaw agent logs --agent-id <id>
# 测试Agent(交互模式)
openclaw agent test --config agent.yaml
# 导出Agent配置
openclaw agent export --agent-id <id> > agent_backup.yaml
建议把这些常用命令做个alias,放到 .bashrc 里,日常运维会方便很多。比如:
alias oc-up="docker-compose up -d"
alias oc-down="docker-compose down"
alias oc-logs="docker-compose logs -f --tail=100"
alias oc-status="docker-compose ps"