By default, Noēsis writes episodes under ./runs/demo/.... In a team or service setting, you usually want a shared location so everyone can see/replay the same traces.
This guide shows four common setups:
- Network volume (NFS/SMB)
- Local + S3 sync
- Docker bind mount
- Kubernetes PersistentVolumeClaim
Pick one of these patterns for your environment—you don’t need all four.
A) Shared dev: network volume
# Example: shared volume mounted at /srv/noesis/runs
ls /srv/noesis/runs
# (empty or existing runs)
Configure your app/runtime to use it as the base runs directory, e.g.:
# pseudo-config
NOESIS_RUNS_DIR=/srv/noesis/runs
Result: /srv/noesis/runs/<service>/<episode-id>/ is shared across the team.
B) Shared dev: local + S3 (or any object store)
Don’t write directly to S3; sync a local directory.
# App writes episodes locally
NOESIS_RUNS_DIR=/var/noesis/runs
# Periodic sync job (cron/CI)
aws s3 sync /var/noesis/runs s3://my-bucket/noesis-runs --delete
# Optionally pull shared episodes down
aws s3 sync s3://my-bucket/noesis-runs /var/noesis/runs
Pattern: local path for fast replay/debugging, S3 as central archive.
C) Docker: bind-mount the runs directory
mkdir -p /srv/noesis/runs
docker run \
-v /srv/noesis/runs:/app/runs \
-e NOESIS_RUNS_DIR=/app/runs \
my-noesis-service:latest
Inside the container, Noēsis writes to /app/runs/...; on the host, you see /srv/noesis/runs/....
D) Kubernetes: PersistentVolumeClaim
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: noesis-runs-pvc
spec:
accessModes: ["ReadWriteMany"]
resources:
requests:
storage: 20Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-noesis-service
spec:
template:
spec:
containers:
- name: app
image: my-noesis-service:latest
env:
- name: NOESIS_RUNS_DIR
value: /var/noesis/runs
volumeMounts:
- name: noesis-runs
mountPath: /var/noesis/runs
volumes:
- name: noesis-runs
persistentVolumeClaim:
claimName: noesis-runs-pvc
Each pod writes episodes under /var/noesis/runs, backed by the shared PVC.
If you can answer “Where do episodes live in this environment?” and “Who can read them?”, you’re ready to roll Noēsis out beyond your laptop.