Docker Compose
The Compose stack is the fastest way to run everything on one host.
Bring it up
Section titled “Bring it up”make up # Fabric network + API + MongoDB + Redis + dashboardmake statusmake api-logs # follow the API logsThe API image builds both the API and the migrator binary, and the
entrypoint applies migrations before the API starts when RUN_MIGRATIONS=true
(set in api/docker-compose.yml for development):
environment: - MONGO_URL=mongodb://mongodb:27017 - WAL_DIRECTORY=/var/log/aeternislog-wal - RUN_MIGRATIONS=true # apply migrations before the API starts (dev convenience)Services
Section titled “Services”go-api— the API (ports5001, metrics9090).mongodb— record store (volumemongodb-data).redis— cache + limiter (AOFappendfsync alwaysfor durability).dashboard— nginx servingexamples/dashboardon8088.
The WAL lives on the wal-data volume, so acknowledged records survive container
restarts.
Production notes
Section titled “Production notes”- In Kubernetes, do not run migrations from the API entrypoint — use the pre-upgrade migration Job and let the API only assert the schema version.
- The in-Compose MongoDB and Redis are single pods for evaluation. For production, point at managed/replicated datastores — see configuration.
Tear down
Section titled “Tear down”make down # stop, keep datamake clean # stop and remove volumes