Skip to content

Docker

The recommended way to run Dirigible locally. Single container, no JDK required on the host.

Prerequisites

Run

bash
docker run --name dirigible --rm -p 8080:8080 dirigiblelabs/dirigible:latest

Open http://localhost:8080 and log in with admin / admin.

Image source

The image is published to GitHub Container Registry as dirigiblelabs/dirigible. Use a release tag (e.g. :13.0.0) in production; :latest tracks the most recent build.

Ports

PortPurpose
8080HTTP UI and REST endpoints
8081GraalJS / Graalium debugger (optional, see DIRIGIBLE_JAVASCRIPT_GRAALVM_DEBUGGER_PORT)
9000In-IDE ttyd terminal (expose if you need browser shell access)

Add -p 8081:8081 -p 9000:9000 to publish them.

Persistent registry

The on-disk registry (workspaces, projects, generated databases) lives at /target/dirigible inside the container. Without a volume it is wiped on container removal. Mount a named volume to keep state across restarts:

bash
docker volume create dirigible_data

docker run --name dirigible --rm -p 8080:8080 \
    -v dirigible_data:/target/dirigible \
    dirigiblelabs/dirigible:latest

A bind-mounted host folder works on Linux and macOS; on Windows prefer a named volume for performance.

Environment configuration

Override any platform setting via -e DIRIGIBLE_* variables. The full catalogue is in Environment Variables.

Next

Released under the EPL-2.0 License.