services: typesense: # NOTE: the Typesense *server* image uses its own versioning (30.x), which # is unrelated to the `typesense` npm *client* (3.x). Typesense does not # publish a `latest` tag, so always pin an explicit version. image: typesense/typesense:30.2 container_name: carpa-typesense restart: unless-stopped ports: - "8108:8108" volumes: - typesense-data:/data command: > --data-dir /data --api-key=${TYPESENSE_API_KEY:-carpa-typesense-dev-key} --enable-cors --snapshot-interval-seconds 60 # Snapshot every 60s (default is 3600s) so the raft write-ahead log is # compacted/truncated repeatedly DURING a large bulk import # (typesense:reindex) — otherwise the whole import piles into the log and # fills the disk ("Could not write to on-disk storage"). volumes: typesense-data: