File size: 1,666 Bytes
b2d9e47
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
services:
  # One-shot init container: docker creates named volumes root:root mode
  # 755, but the iii-engine image is distroless and runs as UID 65532
  # with no `chown` of its own. Without this, /data is unwritable, the
  # engine silently buffers in RAM, and state evaporates on every
  # restart — the exact symptom v0.9.7's working-directory fix set out
  # to solve. Runs once at compose-up and exits.
  iii-init:
    image: busybox:1.36
    user: "0:0"
    volumes:
      - iii-data:/data
    entrypoint: ["sh", "-c", "chown -R 65532:65532 /data && chmod 755 /data"]
    restart: "no"

  iii-engine:
    # Pinned to v0.11.2 — the last engine that runs agentmemory's current
    # worker model cleanly. v0.11.6 introduces a new sandbox-everything-
    # via-`iii worker add` model that agentmemory hasn't been refactored
    # for yet; the architectural mismatch surfaces as EPIPE reconnect
    # loops and empty search after save. Bump only after agentmemory is
    # refactored to register as a sandboxed worker.
    #
    # Override per-shell or via .env file:
    #   AGENTMEMORY_III_VERSION=0.11.7 docker compose up
    image: iiidev/iii:${AGENTMEMORY_III_VERSION:-0.11.2}
    user: "65532:65532"
    depends_on:
      iii-init:
        condition: service_completed_successfully
    ports:
      - "127.0.0.1:49134:49134"
      - "127.0.0.1:3111:3111"
      - "127.0.0.1:3112:3112"
      - "127.0.0.1:9464:9464"
    volumes:
      - iii-data:/data
      - ./iii-config.docker.yaml:/app/config.yaml:ro
    restart: unless-stopped
    logging:
      driver: json-file
      options:
        max-size: "10m"
        max-file: "3"

volumes:
  iii-data: