Skip to content

Commit e238b0d

Browse files
authored
Merge pull request #118 from makeplane/podman-quadlets
Install Plane with Podman Quadlets
2 parents 59d3619 + 923da86 commit e238b0d

File tree

2 files changed

+133
-1
lines changed

2 files changed

+133
-1
lines changed

mint.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,8 @@
7272
"self-hosting/methods/kubernetes",
7373
"self-hosting/methods/coolify",
7474
"self-hosting/methods/portainer",
75-
"self-hosting/methods/airgapped-edition"
75+
"self-hosting/methods/airgapped-edition",
76+
"self-hosting/methods/podman-quadlets"
7677
]
7778
},
7879
{
Lines changed: 131 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,131 @@
1+
---
2+
title: Deploy Plane with Podman Quadlets • Commercial Edition
3+
sidebarTitle: Podman Quadlets
4+
---
5+
6+
This guide shows you the steps to deploy a self-hosted instance of Plane using Podman Quadlets.
7+
8+
## Prerequisites
9+
Before we start, make sure you've got these covered:
10+
11+
- A non-root user account with `systemd --user support` (most modern Linux setups have this)
12+
- Podman version **4.4 or higher**
13+
14+
## Set up Podman
15+
1. Add the Podman repository.
16+
```bash
17+
echo 'deb http://download.opensuse.org/repositories/home:/alvistack/Debian_12/ /' | sudo tee /etc/apt/sources.list.d/home:alvistack.list
18+
```
19+
20+
2. Add the GPG key.
21+
```bash
22+
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
23+
```
24+
25+
3. Refresh your package lists.
26+
```bash
27+
sudo apt update
28+
```
29+
30+
4. Install Podman and its dependencies.
31+
```bash
32+
sudo apt install -y podman uidmap netavark passt
33+
```
34+
35+
The `uidmap` package handles user namespace mapping, `netavark` takes care of networking, and `passt` helps with network connectivity.
36+
37+
5. Download and extract Podman Quadlets.
38+
```bash
39+
tar -xzf podman-quadlets.tar.gz
40+
cd podman-quadlets
41+
```
42+
43+
The directory contains an `install.sh` script that will handle the installation and configuration.
44+
45+
## Install Plane
46+
47+
The installation script sets up Plane and configures all required services. You have two options:
48+
49+
### Without sudo access
50+
```bash
51+
./install.sh --domain your-domain.com --base-dir /your/custom/path
52+
```
53+
This installs Plane in your specified directory, which is useful if you want to maintain control over the installation location.
54+
55+
### With sudo access
56+
```bash
57+
./install.sh --domain your-domain.com
58+
```
59+
This installs Plane in `/opt/plane`, which is a standard system location.
60+
61+
<Note>
62+
Systemd configurations are installed in `~/.config/containers/systemd/`
63+
</Note>
64+
65+
## Start Plane
66+
67+
<Warning>
68+
**Important**
69+
Note that you should run these commands without `sudo`.
70+
</Warning>
71+
72+
1. Reload systemd to recognize new configurations.
73+
```bash
74+
systemctl --user daemon-reload
75+
```
76+
77+
2. Start the network service.
78+
```bash
79+
systemctl --user start plane-nw-network.service
80+
```
81+
82+
3. Start core dependencies.
83+
```bash
84+
systemctl --user start plane-{db,redis,mq,minio}.service
85+
```
86+
87+
4. Start backend services.
88+
```bash
89+
systemctl --user start {api,worker,beat-worker,migrator,monitor}.service
90+
```
91+
92+
5. Start frontend services.
93+
```bash
94+
systemctl --user start {web,space,admin,live,proxy}.service
95+
```
96+
97+
The startup sequence is important: network first, then dependencies, followed by backend services, and finally frontend services.
98+
99+
### Verify service status
100+
Check that all services are running correctly:
101+
102+
1. Check network status.
103+
```bash
104+
systemctl --user status plane-nw-network.service
105+
```
106+
107+
2. Check core dependencies.
108+
```bash
109+
systemctl --user status plane-{db,redis,mq,minio}.service
110+
```
111+
112+
3. Check backend services.
113+
```bash
114+
systemctl --user status {api,worker,beat-worker,migrator,monitor}.service
115+
```
116+
117+
4. Check frontend services.
118+
```bash
119+
systemctl --user status {web,space,admin,live,proxy}.service
120+
```
121+
122+
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.
123+
124+
## Troubleshoot
125+
126+
To debug service issues, examine the logs using:
127+
```bash
128+
journalctl --user -u <service-name> --no-pager
129+
```
130+
131+
The logs will provide detailed information about any configuration issues or errors that may occur.

0 commit comments

Comments
 (0)