Runtime Commands
Every command accepts --json or --ndjson for structured output, plus --strict to return a non-zero exit code when something is wrong. See Structured Output.
ldev doctor
Diagnose environment health and command readiness. Use ldev context when you need an offline project snapshot; use ldev doctor when you need pass/warn/fail checks.
ldev doctor
ldev doctor --json
ldev doctor --list-checks --json
ldev doctor --readiness deploy
ldev doctor --runtime --json
ldev doctor --portal --json
ldev doctor --osgi --jsondoctor --json keeps the default basic diagnostics. Extra runtime probes are opt-in:
--runtimeadds Docker Compose service state intodoctor.runtime.--portaladds HTTP and OAuth token probes intodoctor.portal.--osgiadds Gogo connectivity and bundle summary intodoctor.osgi.
These blocks are null unless explicitly requested.
ldev setup
Optional preparation before ldev start: pull images, refresh docker/.env and warm local runtime directories.
ldev setup
ldev setup --skip-pull
ldev setup --with elasticsearch --with postgresUse --with <service> (repeatable) to opt into extra Compose services such as elasticsearch or postgres when the project scaffold omitted them. For new projects, prefer selecting services during scaffold: ldev project init my-project --services postgres,elasticsearch.
ldev start
Start containers and wait for Liferay health.
ldev start
ldev start --activation-key-file /path/to/activation-key.xml
ldev start --no-wait
ldev start --timeout 400--activation-key-file copies a local DXP activation key into liferay/configs/dockerenv/osgi/modules before start. Default health timeout is 250s.
ldev stop
Stop containers.
ldev stopldev status
Show the runtime state of the current environment. Defaults to JSON output.
ldev status
ldev status --format textldev logs
Stream container logs. This is a thin wrapper around docker compose logs and passes the stream through directly.
ldev logs
ldev logs --service liferay
ldev logs --since 10m
ldev logs --no-followldev logs diagnose
Analyze recent logs and group exceptions by type and frequency. Defaults to JSON.
ldev logs diagnose
ldev logs diagnose --since 10m
ldev logs diagnose --service liferay --since 1h --format textldev shell
Open an interactive shell inside the liferay container.
ldev shellldev env restart / recreate
Refresh the runtime when a simple deploy is not enough.
ldev env restart
ldev env recreate
ldev env restart --no-wait --timeout 400restart restarts the liferay service; recreate force-recreates its containers. Both wait for health by default.
ldev env wait / is-healthy / diff
Scriptable health utilities.
ldev env wait --timeout 600 --poll 10
ldev env is-healthy
ldev env diff --write-baseline
ldev env diff --baseline docker/env-baseline.jsonis-healthy returns exit code 0 when healthy and 1 otherwise, for use in shell pipelines.
ldev env init / restore / clean
Lifecycle maintenance for the Docker runtime.
ldev env init
ldev env restore
ldev env clean --forceclean is destructive and requires --force. restore replaces runtime data from the main repo or from BTRFS_BASE when available.