Skip to main content

Deploy Plane with Docker Swarm • Commercial Edition

This guide shows you how to deploy a self-hosted instance of Plane Commercial Edition using Docker Swarm.

Install Plane

Prerequisites

  • A Docker Swarm environment set up and ready
  • Support for amd64 or arm64 architectures

Procedure

  1. Download the required deployment files

    • swarm-compose.yml — Defines Plane's services and dependencies.
      curl -fsSL https://prime.plane.so/releases/<plane-version>/swarm-compose.yml -o swarm-compose.yml
    • variables.env — Stores environment variables for your deployment.
      curl -fsSL https://prime.plane.so/releases/<plane-version>/variables.env -o plane.env
      warning

      The <plane-version> value should be v1.8.3 or higher.

  2. Configure environment variables Edit the variables.env file and update:

    • DOMAIN_NAME — (required) Your application's domain name
    • SITE_ADDRESS — (required) The full domain name (FQDN) of your instance
    • MACHINE_SIGNATURE — (required) Unique identifier for your machine. Generate with:
      sed -i 's/MACHINE_SIGNATURE=.*/MACHINE_SIGNATURE='$(openssl rand -hex 16)'/' plane.env
    • CERT_EMAIL — (optional) Email for SSL certificate generation (needed for HTTPS)
  3. Configure external DB, Redis, and RabbitMQ

    warning

    For production, configure external database and storage to ensure data security and reliability. Relying on local storage increases the risk of data loss and service disruption.

    • DATABASE_URL — Connection string for your external database
    • REDIS_URL — Connection string for your external Redis instance
    • AMQP_URL — Connection string for your external RabbitMQ server
  4. Load the environment variables

    set -o allexport; source <path-to variables.env>; set +o allexport;
  5. Deploy the stack

    docker stack deploy -c <path-to swarm-compose.yml> plane

That's it! This will deploy Plane as a Swarm stack, and your instance should be accessible on your configured domain.