Docker Compose stack for running Sacred experiment tracking infrastructure locally.
| Service | Description | Port |
|---|---|---|
| MongoDB | Stores experiment metadata | 27017 |
| MinIO | S3-compatible object storage | 9000, 9001 |
Default configuration:
- MongoDB:
localhost:27017, database:sacred - MinIO: S3 API
localhost:9000, Consolelocalhost:9001- Credentials:
minio_admin/changeme123
- Credentials:
Choose your guide based on your needs:
- QUICKSTART-GUI.md — Easy install with Docker Desktop (no command line)
- DEPLOY.md — Complete deployment guide with customization options
- MANAGE_USERS.md — MongoDB and MinIO user management
- MongoDB:
mongodb://localhost:27017 - MinIO Console: http://localhost:9001
- Use with:
- AltarSender — Upload experiments
- AltarViewer — View experiments with Omniboard
- AltarExtractor — Analyze and export data
By default, MongoDB runs without authentication. To add authentication:
-
Add to your
.envfile:MONGO_ROOT_USER=admin MONGO_ROOT_PASSWORD=your_secure_password
-
Update the mongo service in
docker-compose.ymlto use these variables:mongo: image: mongo:6 container_name: mongo_altar restart: unless-stopped environment: MONGO_INITDB_ROOT_USERNAME: ${MONGO_ROOT_USER} MONGO_INITDB_ROOT_PASSWORD: ${MONGO_ROOT_PASSWORD} MONGO_INITDB_DATABASE: ${MONGO_DB} ports: - "${MONGO_PORT}:27017" volumes: - ${MONGO_DATA_PATH}:/data/db
-
Recreate the container:
docker compose down docker compose up -d
Note: After enabling authentication, you'll need to update connection strings in AltarSender, AltarViewer, and AltarExtractor to include the username and password.
- Docker >= 24
- Docker Compose v2
- At least 2 GB free disk space
- AltarExtractor — Browse and filter Sacred experiments (standalone deployment)
- AltarSender — GUI to send experiments to Sacred and MinIO
- AltarViewer — Launch Omniboard configured for your database
GNU General Public License v3.0