Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.compartment.dev/llms.txt

Use this file to discover all available pages before exploring further.

compartment install sets up a complete Compartment deployment on the target machine. It installs the control plane, container runtime, and routing layer, then creates the first admin account and organization. When the install finishes, the CLI prints the admin credentials and the URLs you need to log in and start deploying projects.
Run compartment install on a fresh server dedicated to Compartment. The installer configures Docker networking, system ports, and routing rules that may conflict with other services already running on the machine.

Usage

compartment install [options]
You can pass all options as flags for a fully non-interactive install, or omit optional ones and the CLI prompts you interactively for any required values.

Options

FlagTypeDefaultDescription
--base-domain <domain>stringThe base domain for this Compartment installation, for example deploy.example.com. All project environments are served as subdomains of this domain.
--managed-domainbooleanAllocate a managed install domain through the Compartment broker instead of providing your own. Cannot be used together with --base-domain.
--email <email>stringEmail address for the first admin account. The CLI prompts interactively if omitted.
--organization <name>stringDisplay name for the first organization. The CLI prompts interactively if omitted.
--organization-slug <slug>stringURL slug for the first organization. If omitted, Compartment derives one from --organization.
--public-http-port <port>stringPublic HTTP port to expose, for example 80. Defaults to the standard port for your setup if omitted.
--public-https-port <port>stringPublic HTTPS port to expose, for example 443. Defaults to the standard port for your setup if omitted.
--version <version>stringlatestImage version to install. Accepts latest, main, sha-<commit>, or an exact image tag.
--image-source <source>registry | localregistryWhere to pull images from. Use registry for the standard production install, or local for images already present on the machine.
--output <format>text | jsontextOutput format. Use json to capture the install result in automation scripts.

Version selection

ValueMeaning
latestThe most recent stable release. Recommended for production installs.
mainThe latest build from the main branch. May contain unreleased changes.
sha-<commit>A build pinned to a specific Git commit SHA.
exact image tagA fully specified image tag, for example 1.2.3.

Examples

Interactive install using the managed domain service
compartment install --managed-domain
Non-interactive install with a custom domain and organization
compartment install \
  --base-domain deploy.example.com \
  --email admin@example.com \
  --organization "Acme Corp" \
  --organization-slug acme
Install a pinned version with custom ports
compartment install \
  --base-domain deploy.example.com \
  --version 1.4.2 \
  --public-http-port 8080 \
  --public-https-port 8443
After a successful install, the CLI prints a summary that includes:
  • The admin email and a generated initial password
  • The control plane URL
  • The first organization slug
Save the credentials printed at the end of the install. The initial admin password is shown once. If you lose it, you need to reset it directly on the server.
The target machine must have Docker installed and running before you run compartment install. The CLI validates Docker availability as part of the install preflight checks and exits with an error if Docker is not found.