Skip to main content

Local Docker Compose Quick-Start

Use this path to evaluate Multiforum on one machine before configuring Auth0, cloud storage, maps, email, or other production integrations. The stack starts Neo4j, builds the backend and frontend, creates the initial server configuration and roles, and provisions the first administrator automatically.

Requirements

  • Docker Engine with Docker Compose v2 (Docker Desktop includes both)
  • Git
  • At least 6 GB of memory available to Docker during the initial builds

Start Multiforum

git clone https://github.com/gennit-project/multiforum-nuxt.git
cd multiforum-nuxt
docker compose up --build

The first run builds both applications and can take several minutes. When all three services are healthy, open http://localhost:3000 and choose Sign in.

Service or credentialDefault
Frontendhttp://localhost:3000
Backendhttp://localhost:4000
Neo4j Browserhttp://localhost:7474
Administrator usernameadmin
Administrator emailadmin@multiforum.local
Administrator passwordmultiforum-local-admin
Neo4j passwordmultiforum-local-neo4j

No manual Cypher commands or third-party accounts are required. The ports bind to 127.0.0.1 by default, and named Docker volumes preserve data between restarts.

Choose local credentials

Copy the template and change both passwords before the first run:

cp .env.quickstart.example .env.quickstart
docker compose --env-file .env.quickstart up --build

The template supports these overrides:

VariablePurpose
MULTIFORUM_INSTANCE_NAMEDisplay and server-configuration name
MULTIFORUM_BOOTSTRAP_EMAILInitial administrator email
MULTIFORUM_BOOTSTRAP_USERNAMEInitial administrator username
MULTIFORUM_BOOTSTRAP_PASSWORDInitial administrator password (at least 12 characters)
NEO4J_PASSWORDLocal database password
MULTIFORUM_BIND_ADDRESSHost interface; keep 127.0.0.1 for local use
MULTIFORUM_PUBLIC_FRONTEND_URLBrowser-visible frontend URL
MULTIFORUM_PUBLIC_BACKEND_URLBrowser-visible backend URL
MULTIFORUM_BACKEND_REPOSITORYBackend Git repository to build
MULTIFORUM_BACKEND_REFBackend Git tag, branch, or commit to build

The bootstrap user is created only when its email is not already present. Changing these values later does not replace an existing administrator.

Build behavior and repeatability

The quick-start currently builds the backend from the public backend repository's main branch because a continuously published official backend image is not yet available. That image workflow is tracked in multiforum-backend#207.

For a repeatable local installation, set MULTIFORUM_BACKEND_REF to a release tag or commit:

MULTIFORUM_BACKEND_REF=v1.2.3

You can also override MULTIFORUM_BACKEND_IMAGE and MULTIFORUM_FRONTEND_IMAGE to choose the local image tags produced by Compose.

Stop, restart, or reset

Stop containers without deleting data:

docker compose down

Start them again with the same data:

docker compose up

To intentionally delete all local Multiforum data and start over:

docker compose down --volumes

Deliberately optional integrations

Uploads, maps, geocoding, outbound email, and Auth0 are not required by this stack. Multiforum's capability status hides, disables, or explains related controls when those integrations are unavailable. Open Admin > Instance Setup after signing in to see the status of each capability.

The quick-start uses local-dev authentication and a shared bootstrap password. The backend accepts that provider only when NODE_ENV=development. Do not expose this configuration to the public internet. Use the production self-hosting path with Auth0, TLS, unique secrets, backups, and a secured Neo4j deployment.

Troubleshooting

Inspect health and recent logs:

docker compose ps
docker compose logs --tail=100 database backend frontend

If an initial build is killed because Docker ran out of memory, increase Docker's memory allocation or build one image at a time:

COMPOSE_PARALLEL_LIMIT=1 docker compose up --build

If ports 3000, 4000, 7474, or 7687 are already in use, stop the conflicting local services before starting the stack.