ArangoDB
What is ArangoDB?
ArangoDB is a multi-model database that combines document, graph, and key/value storage behind one query language, AQL. It's a graph-capable alternative to running Neo4j alongside a separate document store. Laradock runs it straight from the official arangodb image.
Start ArangoDB
docker compose up -d arangodb
Stop ArangoDB
docker compose stop arangodb
This stops the container without deleting its data. Data is kept in the named arangodb Docker volume, not under DATA_PATH_HOST.
Configuration
All settings live in arangodb/defaults.env and can be overridden by adding the same line to your own .env:
| Variable | Default | What it does |
|---|---|---|
ARANGODB_VERSION | 3.12 | Image tag from the official ArangoDB image. |
ARANGODB_PORT | 8529 | Host-side port for the web UI and API (container port 8529). |
ARANGODB_ROOT_PASSWORD | secret | Password for the root user. |
Open the web UI
http://localhost:8529
Log in as root with ARANGODB_ROOT_PASSWORD.
Check the API from the command line
curl http://localhost:8529/_api/version
Common issues
- Changing
ARANGODB_VERSIONdoesn't take effect. ArangoDB is pulled by image tag, not built locally, restart after changing it:docker compose up -d arangodb. Crossing a major version against existing data can require ArangoDB's own upgrade procedure, check their docs before jumping versions on a real dataset. - Data isn't where you expect. Unlike most Laradock database services, ArangoDB persists to a named Docker volume (
arangodb), notDATA_PATH_HOST. Usedocker volume inspect <project>_arangodbto find it on disk, ordocker compose down -vto wipe it (data loss). - Port already in use on your host. Change
ARANGODB_PORTin.envand restart. - Forgot the root password. It's only applied on first boot into a fresh volume. If you changed
ARANGODB_ROOT_PASSWORDafter that, either reset it from inside ArangoDB or drop thearangodbvolume (data loss).
Need a different multi-model option? See SurrealDB. Back to the Getting Started guide.