# Compartment ## Docs - [CLI authentication and session management](https://docs.compartment.dev/cli/authentication.md): Log in and out of a Compartment instance, check your current identity, switch organizations, and activate a new account using a bootstrap token. - [compartment deploy](https://docs.compartment.dev/cli/commands/deploy.md): Read compartment.yml from the current directory and deploy one or all services to a named environment, with optional live progress output. - [compartment init](https://docs.compartment.dev/cli/commands/init.md): Scaffold a compartment.yml file in your repository root to link a directory to a Compartment project and define its initial service configuration. - [compartment inspect](https://docs.compartment.dev/cli/commands/inspect.md): Display the full configuration of an active deployment: build config, run config, readiness checks, container ID, and promotion stage for a service. - [compartment install](https://docs.compartment.dev/cli/commands/install.md): Install the Compartment control plane, container runtime, and routing layer on a Docker server. Configure domain, ports, organization, and image version. - [compartment logs](https://docs.compartment.dev/cli/commands/logs.md): Fetch or continuously stream log lines from active Compartment service deployments, with timestamps, service names, and stream type for each line. - [compartment project](https://docs.compartment.dev/cli/commands/project.md): List, inspect, rename, archive, and delete Compartment projects from the CLI. Archived projects retain all data but are hidden from default listings. - [compartment promote](https://docs.compartment.dev/cli/commands/promote.md): Promote a candidate deployment from one environment to another, switching live traffic without a new build. Supports verbose progress output and JSON output. - [compartment rollback](https://docs.compartment.dev/cli/commands/rollback.md): Revert a Compartment environment to its previous active deployment. Target a specific deployment by ID or let Compartment pick the most recent successful one. - [compartment status](https://docs.compartment.dev/cli/commands/status.md): Display active and recent deployments for a Compartment project, including health, promotion stage, and public route URL for each service. - [compartment system](https://docs.compartment.dev/cli/commands/system.md): Check system service health, update Compartment to a new version, restart all services, and manage the installation domain from the CLI. - [compartment variable](https://docs.compartment.dev/cli/commands/variable.md): Set, list, inspect, import, and remove runtime variables for Compartment services. Scope variables to an environment or a specific service. - [CLI overview](https://docs.compartment.dev/cli/overview.md): Install the Compartment CLI, learn its command groups, and use JSON output mode for CI/CD automation and scripting against your self-hosted instance. - [Deployment](https://docs.compartment.dev/concepts/deployments.md): A Compartment deployment is one build-and-run instance of a service. Learn its full lifecycle from queued to active, promotion stages, and rollback. - [Environment](https://docs.compartment.dev/concepts/environments.md): Compartment environments are named deployment targets that keep production, staging, and other stages isolated with their own deployments and variables. - [Project](https://docs.compartment.dev/concepts/projects.md): A Compartment project links one Git repository to the platform. Learn how projects are named, organized, and managed across their full lifecycle. - [Service](https://docs.compartment.dev/concepts/services.md): A service is one deployable unit inside a Compartment project. Learn about service kinds, naming rules, build and run config, and access modes. - [Build Options](https://docs.compartment.dev/configuration/build-options.md): Configure how Compartment builds each service: choose a build strategy, set a custom build command, declare APT packages, and expose build-time variables. - [compartment.yml](https://docs.compartment.dev/configuration/compartment-yml.md): Complete reference for compartment.yml, the file that links your repository to a Compartment project and declares every deployable service. - [compartment.routes.yml](https://docs.compartment.dev/configuration/routes.md): Reference for compartment.routes.yml, the optional file that defines browser-facing path rewrites and proxy rules between your services. - [Service Kinds](https://docs.compartment.dev/configuration/service-kinds.md): Understand the five Compartment service kinds and the accessMode field, so you can deploy each part of your application with the right runtime behavior. - [Runtime Variables](https://docs.compartment.dev/configuration/variables.md): Manage plain and sensitive runtime variables scoped to an environment or a specific service using the Compartment CLI. Variables are injected at runtime. - [Custom domain](https://docs.compartment.dev/guides/custom-domains.md): Point your own domain at a self-hosted Compartment installation, set DNS records, choose a TLS mode, and verify the domain is healthy using the CLI. - [Deploy your first app](https://docs.compartment.dev/guides/deploy-your-first-app.md): Go from an empty directory to a live deployment in minutes. Initialize a project, write a compartment.yml, and ship your first app with the Compartment CLI. - [Deploy multiple services](https://docs.compartment.dev/guides/multi-service.md): Define a web frontend and a backend API in a single compartment.yml, configure cross-service routing, and deploy them together or independently. - [Zero-downtime deployment](https://docs.compartment.dev/guides/promote-and-rollback.md): Understand how Compartment's candidate promotion lifecycle works, how to promote across environments, and how to roll back instantly when something goes wrong. - [SSO with OIDC](https://docs.compartment.dev/guides/sso.md): Configure SSO for Compartment using Google or any generic OIDC provider. Add, list, update, and remove providers with the compartment sso oidc commands. - [Install Compartment](https://docs.compartment.dev/installation.md): Run compartment install to set up the Compartment control plane, container runtime, and routing layer on any Linux server running Docker. - [What Is Compartment?](https://docs.compartment.dev/introduction.md): Compartment is a self-hosted deployment platform. Define services in compartment.yml, deploy from the CLI, and get zero-downtime rollouts on your own infra. - [Quick Start](https://docs.compartment.dev/quickstart.md): Go from zero to a live deployment in four steps. Log in, initialize your project, run compartment deploy, and check your deployment status. - [Organizations](https://docs.compartment.dev/team/organizations.md): An organization is the top-level tenant in Compartment. Group your projects and users under one or more organizations on the same installation. - [Users, Roles, and Permissions](https://docs.compartment.dev/team/users-and-roles.md): Invite teammates, assign admin, deployer, readonly, or viewer roles, and manage user access and permissions across your Compartment organization.