Deploy Plane with Podman Quadlets • Commercial Edition
This guide shows you the steps to deploy a self-hosted instance of Plane using Podman Quadlets.
Prerequisites
- A non-root user account with
systemd --user support
(most modern Linux setups have this) - Podman version 4.4 or higher
Set up Podman
-
Add the Podman repository.
echo 'deb http://download.opensuse.org/repositories/home:/alvistack/Debian_12/ /' | sudo tee /etc/apt/sources.list.d/home:alvistack.list
-
Add the GPG key.
curl -fsSL https://download.opensuse.org/repositories/home:alvistack/Debian_12/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/home_alvistack.gpg > /dev/null
-
Refresh your package lists.
sudo apt update
-
Install Podman and its dependencies.
sudo apt install -y podman uidmap netavark passt
The
uidmap
package handles user namespace mapping,netavark
takes care of networking, andpasst
helps with network connectivity.
Install Plane
-
Download and extract Podman Quadlets.
curl -fsSL https://prime.plane.so/releases/<plane-version>/podman-quadlets.tar.gz -o podman-quadlets.tar.g
tar -xzf podman-quadlets.tar.gz
cd podman-quadletswarningReplace
<plane-version>
with the latest version. (e.g., v1.13.0).The directory contains an
install.sh
script that will handle the installation and configuration. -
The installation script sets up Plane and configures all required services. You have two options:
Without sudo access
./install.sh --domain your-domain.com --base-dir /your/custom/path
This installs Plane in your specified directory, which is useful if you want to maintain control over the installation location.
With sudo access
./install.sh --domain your-domain.com
This installs Plane in
/opt/plane
, which is a standard system location.noteSystemd configurations are installed in
~/.config/containers/systemd/
Start Plane
Important
Note that you should run these commands without sudo
.
-
Reload systemd to recognize new configurations.
systemctl --user daemon-reload
-
Start the network service.
systemctl --user start plane-nw-network.service
-
Start core dependencies.
systemctl --user start plane-{db,redis,mq,minio}.service
-
Start backend services.
systemctl --user start {api,worker,beat-worker,migrator,monitor}.service
-
Start frontend services.
systemctl --user start {web,space,admin,live,proxy}.service
The startup sequence is important: network first, then dependencies, followed by backend services, and finally frontend services.
Verify service status
Check that all services are running correctly:
-
Check network status.
systemctl --user status plane-nw-network.service
-
Check core dependencies.
systemctl --user status plane-{db,redis,mq,minio}.service
-
Check backend services.
systemctl --user status {api,worker,beat-worker,migrator,monitor}.service
-
Check frontend services.
systemctl --user status {web,space,admin,live,proxy}.service
Your Plane installation should now be running successfully with Podman Quadlets. This setup provides automatic service restart capabilities and standard systemd management commands for maintaining your installation.
Troubleshoot
To debug service issues, examine the logs using:
journalctl --user -u <service-name> --no-pager
The logs will provide detailed information about any configuration issues or errors that may occur.