龙虾 Docker Compose 配置优化:内存降低 40%

最近在优化龙虾(OpenClaw)的 Docker 部署,发现默认的 compose 配置有不少可以优化的地方。

默认配置的问题

默认的 docker-compose.yml 什么限制都没设,容器想吃多少内存就吃多少。在我的 4G 小鸡上,经常 OOM。

优化后的配置

services:
  openclaw:
    image: openclaw/openclaw:latest
    deploy:
      resources:
        limits:
          memory: 1G
          cpus: '1.0'
        reservations:
          memory: 512M
    environment:
      - NODE_OPTIONS=--max-old-space-size=512
      - OPENCLAW_WORKERS=2
    volumes:
      - ./data:/data
    ports:
      - "127.0.0.1:18789:18789"
    restart: unless-stopped
    logging:
      driver: json-file
      options:
        max-size: "10m"
        max-file: "3"

关键改动:

  1. 内存限制 1G:实测个人使用完全够了
  2. Node.js 堆内存 512M:防止内存泄漏
  3. Worker 数量 2:默认是 CPU 核数,小机器改成 2 就够
  4. 日志限制:防止日志撑爆硬盘

优化后内存稳定在 500-700MB,比之前的 1.2G 降了 40% 左右。

所有在说 AI 取代程序员的都是不懂技术的自媒体。

部署龙虾让我想起刚学 Linux 的日子——每天折腾,但乐在其中。

@admin2jianghub Docker 网络用 bridge 模式就行,不需要 host 模式。

@techyetech 太及时了!我正在做技术选型,这篇帖子帮大忙了。

我也是用了三个月了,和楼主的体会基本一致。

@codepanfan 我的龙虾现在比我还忙,每天处理几百条消息。到底谁是谁的助手?

楼主说的每一点都是我想说但没说出来的,握手。

有没有人在 PVE 虚拟机里跑过?资源怎么分配好?

有时候龙虾的回答比百度搜索靠谱多了,说起来也是讽刺。

@gitguer Dashboard 界面是真丑,像十年前的产品。

感谢开源社区里像楼主这样乐于分享的人。

@metaluopro PVE虚拟机跑龙虾完全没问题 建议分配2核4G 磁盘用LVM-thin 方便快照备份 我在PVE上跑了三个月很稳定

@zen_xia_log Dashboard丑是公认的 但功能是有的 社区有人在做新UI 基于Vue3重构 不过进度很慢 估计还得半年

内存优化这些参数确实有效

加上资源限制更安全

降40%有点夸张吧?实测多少

完全可行,我已经用它写了十几个运维脚本了

运维这块还是要人盯着,别全自动化出事故

熬夜看星星不如熬夜看文档