Self-hosted Focalboard Ubuntu 24.04 provides complete control over your project management data. Unlike cloud-based solutions where your sensitive information lives on third-party servers, a self-hosted approach ensures data sovereignty and compliance with organizational security policies.
This comprehensive tutorial walks you through deploying Focalboard with PostgreSQL database and Nginx reverse proxy, creating a secure and scalable environment for your team’s collaboration needs. You’ll learn how to configure SSL certificates for encrypted connections, set up systemd services for automatic startup, and optimize your installation for production use.
Focalboard serves as an excellent open-source alternative for project management, offering kanban boards, task lists, calendar views, and collaborative workspaces all running on your own infrastructure without recurring subscription costs. Whether you’re managing a small team or scaling to enterprise needs, this setup provides the flexibility and performance your organization demands.
Table of Contents
ToggleSelf-Hosted Focalboard Benefits
| Feature | Self-Hosted Focalboard | Cloud-Based Solutions |
|---|---|---|
| Data Ownership | Full control on your server | Stored on vendor servers |
| Monthly Cost | Free (open-source) | $10-25 per user/month |
| Privacy | Complete data sovereignty | Subject to vendor policies |
| Customization | Unlimited access | Limited to platform features |
| Compliance | Meet any regulation | Dependent on vendor |
| Features | Kanban, tables, calendar, gallery | Similar features |
For more information, visit the official Focalboard website and check the GitHub repository.
#1 Server Connection
Connect to your Ubuntu 24.04 server via SSH:
ssh root@192.168.x.x
Replace 192.168.x.x with your actual server IP address. Windows users can use PuTTY or Windows Terminal.
#2 Install Required Packages
Update system packages:
apt update
Install web server, SSL tools, and database:
apt install wget unzip curl gnupg nginx python3-certbot-nginx
apt install postgresql postgresql-contrib
#3 Database Configuration
Switch to PostgreSQL user and access the database shell:
su - postgres
psql
Create database and user:
CREATE DATABASE focalboard;
CREATE USER focaluser WITH PASSWORD 'YourSecurePass';
GRANT ALL PRIVILEGES ON DATABASE focalboard TO focaluser;
\q
Replace YourSecurePass with your secure password. Exit to root user:
exit
#4 Download Focalboard
Create installation directory and download the package:
mkdir -p /opt/focalboard
cd /opt/focalboard
wget https://sourceforge.net/projects/focalboard.mirror/files/v7.10.6/focalboard-server-linux-amd64.tar.gz/download -O focalboard-server-linux-amd64.tar.gz
Extract and cleanup:
tar -xzf focalboard-server-linux-amd64.tar.gz
rm focalboard-server-linux-amd64.tar.gz
#5 Focalboard Configuration
Edit the configuration file:
nano /opt/focalboard/focalboard/config.json
Update with your database credentials:
{
"serverRoot": "http://localhost:8000",
"port": 8000,
"dbtype": "postgres",
"dbconfig": "postgres://focaluser:YourSecurePass@localhost/focalboard?sslmode=disable&connect_timeout=10",
"useSSL": false,
"webpath": "./pack",
"filespath": "./files",
"telemetry": true,
"session_expire_time": 2592000,
"session_refresh_time": 18000,
"localOnly": false,
"enablePublicSharedBoards": true,
"featureFlags": {}
}
Replace YourSecurePass with your actual password. Save with CTRL+X, Y, Enter.
#6 Setup System Service
Create systemd service file:
nano /etc/systemd/system/focalboard.service
Add this configuration:
[Unit]
Description=Focalboard Server
After=network.target
[Service]
Type=simple
Restart=always
RestartSec=5s
ExecStart=/opt/focalboard/focalboard/bin/focalboard-server
WorkingDirectory=/opt/focalboard/focalboard
[Install]
WantedBy=multi-user.target
Enable and start the service:
systemctl daemon-reload
systemctl enable focalboard
systemctl start focalboard
systemctl status focalboard
#7 Nginx Configuration
Create Nginx site configuration:
nano /etc/nginx/sites-available/focalboard.conf
Add this configuration (replace example.com):
upstream focalboard {
server 127.0.0.1:8000;
keepalive 32;
}
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://focalboard;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location ~ /ws/* {
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_pass http://focalboard;
}
}
Enable the configuration:
ln -s /etc/nginx/sites-available/focalboard.conf /etc/nginx/sites-enabled/
rm /etc/nginx/sites-enabled/default
nginx -t
systemctl reload nginx
#8 SSL Certificate Setup
Install SSL certificate with Let’s Encrypt:
certbot --nginx -d example.com
Replace example.com with your domain. Follow the prompts to complete setup.
#9 Access Focalboard
Navigate to your domain in a web browser:
https://example.com
Create your first account through the registration page. Initial registration is always allowed, while additional users need invite links.
Deploy on High-Performance Infrastructure
Looking for reliable hosting for your Focalboard installation? QUAPE VPS offers powerful infrastructure built on AMD EPYC processors and ultra-fast NVMe SSD storage. With 99.9% uptime guarantee, full root access, and 24/7 expert support, QUAPE provides the performance your team needs at competitive pricing.
Get started with QUAPE VPS Hosting and experience the difference of enterprise-grade hardware for your self-hosted applications.
Final Thoughts
You now have a fully functional Focalboard installation on Ubuntu 24.04 with PostgreSQL database backend, Nginx reverse proxy, and SSL encryption. This self-hosted setup gives you complete control over your project management data while providing your team with powerful collaboration tools.
- Ultimate Self-Hosted Focalboard Ubuntu 24.04 Setup Guide - October 25, 2025
- AWS Outage October 2025 Drives Shift to On Premise Hosting - October 21, 2025
- How to Setup MinIO for CDN Storage on Ubuntu 24.04 - October 14, 2025
