|
| 1 | +--- |
| 2 | +title: Commercial Airgapped Edition |
| 3 | +sidebarTitle: Airgapped Edition |
| 4 | +--- |
| 5 | + |
| 6 | +This guide walks you through setting up the Commercial Airgapped Edition in an offline environment using our pre-packaged installation bundle. |
| 7 | + |
| 8 | +<Warning> |
| 9 | +**IMPORTANT** |
| 10 | +These instructions are for new installations only. If you're migrating from an existing Community Edition to an air-gapped setup, follow [this guide](/self-hosting/manage/community-to-airgapped). |
| 11 | +</Warning> |
| 12 | + |
| 13 | +## Prerequisites |
| 14 | +Before we get started, make sure your air-gapped machine has: |
| 15 | + |
| 16 | +- Docker (version 24 or later) up and running |
| 17 | +- Docker Compose Plugin installed (you should be able to run docker compose or docker-compose) |
| 18 | +- The Plane air-gapped package (`airgapped.tar.gz`) that we'll provide, which includes: |
| 19 | + - Docker image files (`.tar` format) |
| 20 | + - Configuration files (`docker-compose.yml` and `plane.env`) |
| 21 | + - Installation script (`install.sh`) |
| 22 | + |
| 23 | +## Install Plane |
| 24 | +1. Reach out to [email protected] to get your installation download URL and the license file. |
| 25 | + |
| 26 | +2. On a machine that has internet access, download the installation package: |
| 27 | + |
| 28 | + ```bash |
| 29 | + curl -LO <asset-download-url> |
| 30 | + ``` |
| 31 | + |
| 32 | +3. Transfer the `airgapped.tar.gz` file to your offline machine using whatever method works in your environment. |
| 33 | + |
| 34 | +4. Once you have the file on your air-gapped machine, extract the package. |
| 35 | + |
| 36 | + ```bash |
| 37 | + mkdir -p airgapped |
| 38 | + tar -xvzf airgapped.tar.gz -C airgapped |
| 39 | + cd airgapped |
| 40 | + ``` |
| 41 | + |
| 42 | +5. Run the installation script: |
| 43 | + ```bash |
| 44 | + bash install.sh |
| 45 | + ``` |
| 46 | + |
| 47 | + The script will guide you through the process. Here's what to expect: |
| 48 | + |
| 49 | + The installer will ask you a few questions: |
| 50 | + ```bash |
| 51 | + ********************************************************** |
| 52 | + You are about to install/upgrade Plane as airgapped setup |
| 53 | + |
| 54 | + Pre-requisites: |
| 55 | + - Docker installed and running |
| 56 | + - Docker version 24 or higher |
| 57 | + - docker-compose or docker compose installed |
| 58 | + - A tarball of all the images |
| 59 | + - A docker-compose.yml file (docker-compose.yml) |
| 60 | + - A plane.env file (plane.env) |
| 61 | + ********************************************************** |
| 62 | + |
| 63 | + Enter the directory to install Plane (default: /home/ubuntu/planeairgapped): |
| 64 | + |
| 65 | + Enter the domain or ip address to access Plane (default: 127.0.0.1): plane.mycompany.com |
| 66 | + |
| 67 | + ********************************************************** |
| 68 | + Verify the final configuration: |
| 69 | + - Setup Directory: /home/ubuntu/planeairgapped |
| 70 | + - App Domain: plane.mycompany.com |
| 71 | + - Installation Type: New |
| 72 | + ********************************************************** |
| 73 | + ``` |
| 74 | + |
| 75 | + Once you confirm your settings, the installer will: |
| 76 | + - Copy the `docker-compose.yml` and `plane.env` files to your chosen installation directory. |
| 77 | + - Create the necessary folders for data and logs. |
| 78 | + - Load all the Docker images into your local Docker registry. |
| 79 | + - Show you the next steps to get Plane running |
| 80 | + |
| 81 | + You'll see something like this when the installation completes: |
| 82 | + ```bash |
| 83 | + ********************************************************** |
| 84 | + Plane Setup is ready to configure and start |
| 85 | + |
| 86 | + Use below commands to configure and start Plane |
| 87 | + |
| 88 | + Switch to the setup directory |
| 89 | + cd /home/ubuntu/planeairgapped |
| 90 | + |
| 91 | + Start the services |
| 92 | + docker compose -f docker-compose.yml --env-file plane.env up -d |
| 93 | + |
| 94 | + Check logs of migrator service and wait for it to finish using below command |
| 95 | + docker compose logs -f migrator |
| 96 | + |
| 97 | + Check logs of api service and wait for it to start using below command |
| 98 | + docker compose logs -f api |
| 99 | + |
| 100 | + Once the api service is started, you can access Plane at http://plane.mycompany.com |
| 101 | + |
| 102 | + ********************************************************** |
| 103 | + Installation completed successfully |
| 104 | + |
| 105 | + You can access Plane at http://plane.mycompany.com |
| 106 | + ``` |
| 107 | + |
| 108 | + After installation, your directory structure will look like this: |
| 109 | + ```bash |
| 110 | + ~/planeairgapped/ |
| 111 | + ├── docker-compose.yml |
| 112 | + ├── plane.env |
| 113 | + ├── data/ |
| 114 | + └── logs/ |
| 115 | + ``` |
| 116 | +<Tip> |
| 117 | +Once everything is working, you can safely delete the `airgapped` folder that contains the installation script and image files to free up space. |
| 118 | +</Tip> |
| 119 | + |
| 120 | +## Start Plane |
| 121 | +1. To get Plane up and running, navigate to your installation directory and start the services: |
| 122 | + ```bash |
| 123 | + cd ~/planeairgapped |
| 124 | + docker compose --env-file plane.env up -d |
| 125 | + ``` |
| 126 | + |
| 127 | +2. Watch the logs to make sure everything starts properly: |
| 128 | + - Monitor the database migration process: |
| 129 | + ```bash |
| 130 | + docker compose logs -f migrator |
| 131 | + ``` |
| 132 | + |
| 133 | + - Monitor the API service startup: |
| 134 | + ```bash |
| 135 | + docker compose logs -f api |
| 136 | + ``` |
| 137 | + |
| 138 | +Once both services are running smoothly, you can access Plane by opening your browser and going to the domain or IP address you configured during installation. |
| 139 | + |
| 140 | +## Activate your license |
| 141 | + |
| 142 | +Once your air-gapped installation is running, you'll need to activate your workspace with the provided license file. |
| 143 | +<Note> |
| 144 | +You should have received the `license_key.json` file as part of your air-gapped package. If you don't have this file, contact our support team. |
| 145 | +</Note> |
| 146 | + |
| 147 | +1. Go to your **Workspace Settings** in the Plane application. |
| 148 | +2. Select **Billing and plans** on the right pane. |
| 149 | +3. Click the **Activate this workspace** button. |
| 150 | +  |
| 151 | +4. Upload the license file `license_key.json` to activate your workspace. |
| 152 | +--- |
| 153 | +You should now have Plane Business plan running in your air-gapped environment. If you run into any issues, reach out to our support team for assistance. |
0 commit comments