name: ${AXON_COMPOSE_PROJECT_NAME:-axon} # Local development stack. # # Uses the production service definitions for infra, but runs axon in a newer # dev runtime with the local debug target directory bind-mounted. Qdrant is # remote on tootie by default; start the optional axon-qdrant service only when # you intentionally want a local vector store. Normal Rust code changes only # need `cargo build --bin axon` plus an axon service restart. # # ./scripts/axon doctor # docker compose up -d axon # services: axon: extends: file: docker-compose.prod.yaml service: axon image: axon:dev-runtime build: context: . dockerfile: config/Dockerfile target: dev-runtime volumes: - type: bind source: ${AXON_DEV_TARGET_DIR:-./target/debug} target: /home/axon/.axon/dev read_only: true entrypoint: ["/usr/bin/tini", "--", "/home/axon/.axon/dev/axon"] command: ["serve"] axon-qdrant: extends: file: docker-compose.prod.yaml service: axon-qdrant axon-tei: extends: file: docker-compose.prod.yaml service: axon-tei axon-chrome: extends: file: docker-compose.prod.yaml service: axon-chrome networks: axon: name: ${DOCKER_NETWORK:-axon} external: true