Standalone quickstart
The public Compose stack starts DonkeyFleet, PostgreSQL 16, Vault 1.18 in dev mode, and Keycloak 26 in dev mode. Use it for evaluation or a small installation, not as a hardened HA control plane.
Prerequisites
- Docker Desktop, or Docker Engine with
host.docker.internalmapped on the host. - Free ports 8090, 8081, 8200, and 5432.
- A DonkeyFleet image that the machine can pull.
Start the stack
Clone the public deployment repository, then enter deploy/standalone:
git clone https://github.com/saragihruben/donkeyfleet.git
cd donkeyfleet/deploy/standalone
cp .env.example .env
Set DONKEYFLEET_IMAGE in .env, then start only the published Compose file:
docker compose -f docker-compose.yml up -d
Open http://host.docker.internal:8090. The evaluation administrator is donkey / donkey;
the read-only account is reader / reader.
The bundled users, database password, Keycloak administrator, Vault root token, and OIDC client secret are fixed development values. Never expose this stack as a production control plane.
Runtime cadence and Apply
| Variable | Default | Effect |
|---|---|---|
RECONCILE_INTERVAL | 5m | Full observation and baseline monitoring |
PROVISIONING_POLL_INTERVAL | 15s | Safe follow-up while create jobs or ready provisioning steps are active |
RECONCILE_DRY_RUN | true | Starts without destination writes |
RECONCILE_DRY_RUN_UI_OVERRIDE | true | Lets an administrator select Apply Live for evaluation |
The Apply Live choice is stored in PostgreSQL and survives an application-container restart. The 15-second follow-up always acquires the advisory lock, performs complete observation, and resumes persisted checkpoints; it never blindly repeats an unresolved ONTAP job.
Seed one ONTAP credential
docker compose exec vault sh -c "VAULT_TOKEN=donkeyfleet-root vault kv put secret/snapmirror/clusters/onprem1 username='ONTAP_USER' password='ONTAP_PASS'"
Register the cluster with Vault path snapmirror/clusters/onprem1. The endpoint must be reachable
from the DonkeyFleet container.
Persistence, upgrade, and teardown
PostgreSQL data persists in the pgdata volume. Vault dev-mode data does not survive a Vault
restart. Upgrade by changing the immutable image tag in .env, then run:
docker compose -f docker-compose.yml pull donkeyfleet
docker compose -f docker-compose.yml up -d donkeyfleet
Flyway migrates the preserved database when the application starts. Normal teardown keeps it:
docker compose -f docker-compose.yml down
docker compose -f docker-compose.yml down -v permanently deletes PostgreSQL state. Do not use
the volume flag during an upgrade or when provisioning recovery matters.
Next, complete the first dry-run.