Skip to content

Latest commit

 

History

History
160 lines (116 loc) · 5.59 KB

File metadata and controls

160 lines (116 loc) · 5.59 KB
title Deploy Plane Commercial in an Airgapped Docker Environment
sidebarTitle For Docker
**IMPORTANT** Airgapped deployments are available exclusively for Business plan customers. Contact our [sales team](mailto:sales@plane.so) for pricing and licensing information.

This guide walks you through deploying Plane Commercial in an airgapped Docker environment using Docker Compose and pre-configured images from your private registry.

Prerequisites

Before starting, ensure you have:

  • Docker (version 24 or later) installed and running
  • Docker Compose Plugin installed (you should be able to run docker compose or docker-compose)
  • Access to a private Docker registry containing Plane images
  • Required ports opened to access the application (80, 443)
While Docker can run stateful services with persistent volumes, we strongly recommend using external managed services for better reliability in backup/restore operations and disaster recovery.

Consider these alternatives:

  • MinIO: Replace with AWS S3, Google Cloud Storage, or any S3-compatible service
  • Redis: Replace with Valkey or a managed Redis service
  • PostgreSQL: Use a managed PostgreSQL service
  • RabbitMQ: Use a managed message queue service
  • OpenSearch: Use a managed OpenSearch or Elasticsearch service

Install Plane

  1. Prepare Docker images for airgapped environment

    Refer to this document to download the Docker images from the Plane artifact registry to your internal registry.

    **Important** This process will NOT download or clone these infrastructure images: - `valkey/valkey:7.2.11-alpine` - `postgres:15.7-alpine` - `rabbitmq:3.13.6-management-alpine` - `minio/minio:latest` - `minio/mc:latest` - `opensearchproject/opensearch:3.3.2`

    If you're using local infrastructure services, you'll need to pull and transfer these images separately.

  2. Download Docker Compose configuration

    Download the Docker Compose configuration files from the official release.

    # Download docker-compose.yml
    curl -fsSL https://prime.plane.so/releases/<plane-version>/docker-compose.yml -o docker-compose.yml
    
    # Download environment template
    curl -fsSL https://prime.plane.so/releases/<plane-version>/variables.env -o plane.env
  3. Configure environment variables

    Edit the plane.env file to configure your deployment:

    # Generate a unique machine signature
    export MACHINE_SIGNATURE=$(uuidgen)
    
    # Set your domain
    export DOMAIN_NAME=plane.yourcompany.com
    export WEB_URL=https://plane.yourcompany.com
    export CORS_ALLOWED_ORIGINS=https://plane.yourcompany.com

    Update image references in docker-compose.yml to point to your private registry:

    services:
      web:
        image: your-registry.io/plane/web-commercial:${APP_RELEASE_VERSION}
      
      api:
        image: your-registry.io/plane/backend-commercial:${APP_RELEASE_VERSION}
      
      space:
        image: your-registry.io/plane/space-commercial:${APP_RELEASE_VERSION}
      
      admin:
        image: your-registry.io/plane/admin-commercial:${APP_RELEASE_VERSION}
      
      live:
        image: your-registry.io/plane/live-commercial:${APP_RELEASE_VERSION}
      
      monitor:
        image: your-registry.io/plane/monitor-commercial:${APP_RELEASE_VERSION}
      
      silo:
        image: your-registry.io/plane/silo-commercial:${APP_RELEASE_VERSION}

    Infrastructure services (if using local setup):

    services:
      redis:
        image: valkey/valkey:7.2.11-alpine
      
      postgres:
        image: postgres:15.7-alpine
      
      rabbitmq:
        image: rabbitmq:3.13.6-management-alpine
      
      minio:
        image: minio/minio:latest

Start Plane

  1. Start the services:

    docker compose --env-file plane.env up -d
  2. Watch the logs to make sure everything starts properly.

    • To monitor the database migration process:
    docker compose logs -f migrator
    • To monitor the API service startup:
    docker compose logs -f api

    The API is healthy when you see: api-1 listening at

Once all services are running smoothly, you can access Plane by opening your browser and going to the domain you configured.

Activate your license

Once your air-gapped installation is running, you'll need to activate your workspace with the license file.

  1. Login to the Prime portal with the same email address you used to purchase the paid plan.
  2. Go to Manage licenses.
  3. Click Download license to download the license file for your Plane version. Download license file
  4. Navigate to the Workspace Settings in the Plane application.
  5. Select Billing and plans on the right pane.
  6. Click the Activate this workspace button. Upload license file
  7. Upload the license file to activate your workspace.

You now have Plane running in your air-gapped environment. If you run into any issues, check the logs using the commands above, or reach out to our support team for assistance.

Additional configuration

For more advanced Plane configuration options, refer to the Docker documentation.