{"id":16568,"date":"2025-10-25T16:23:28","date_gmt":"2025-10-25T08:23:28","guid":{"rendered":"https:\/\/www.quape.com\/?p=16568"},"modified":"2025-10-25T16:23:28","modified_gmt":"2025-10-25T08:23:28","slug":"self-hosted-focalboard-ubuntu-24-04-2","status":"publish","type":"post","link":"https:\/\/www.quape.com\/id\/self-hosted-focalboard-ubuntu-24-04-2\/","title":{"rendered":"Panduan Pengaturan Focalboard Ubuntu 24.04 Self-Hosted Terbaik"},"content":{"rendered":"<div id=\"bsf_rt_marker\"><\/div><p class=\"whitespace-normal break-words\">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.<\/p>\n<p class=\"whitespace-normal break-words\">This comprehensive tutorial walks you through deploying Focalboard with PostgreSQL database and Nginx reverse proxy, creating a secure and scalable environment for your team&#8217;s collaboration needs. You&#8217;ll learn how to configure SSL certificates for encrypted connections, set up systemd services for automatic startup, and optimize your installation for production use.<\/p>\n<p class=\"whitespace-normal break-words\">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&#8217;re managing a small team or scaling to enterprise needs, this setup provides the flexibility and performance your organization demands.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_81 counter-hierarchy ez-toc-counter ez-toc-transparent ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.quape.com\/id\/self-hosted-focalboard-ubuntu-24-04-2\/#Self-Hosted_Focalboard_Benefits\" >Self-Hosted Focalboard Benefits<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.quape.com\/id\/self-hosted-focalboard-ubuntu-24-04-2\/#1_Server_Connection\" >#1 Server Connection<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.quape.com\/id\/self-hosted-focalboard-ubuntu-24-04-2\/#2_Install_Required_Packages\" >#2 Install Required Packages<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.quape.com\/id\/self-hosted-focalboard-ubuntu-24-04-2\/#3_Database_Configuration\" >#3 Database Configuration<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.quape.com\/id\/self-hosted-focalboard-ubuntu-24-04-2\/#4_Download_Focalboard\" >#4 Download Focalboard<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.quape.com\/id\/self-hosted-focalboard-ubuntu-24-04-2\/#5_Focalboard_Configuration\" >#5 Focalboard Configuration<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.quape.com\/id\/self-hosted-focalboard-ubuntu-24-04-2\/#6_Setup_System_Service\" >#6 Setup System Service<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.quape.com\/id\/self-hosted-focalboard-ubuntu-24-04-2\/#7_Nginx_Configuration\" >#7 Nginx Configuration<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.quape.com\/id\/self-hosted-focalboard-ubuntu-24-04-2\/#8_SSL_Certificate_Setup\" >#8 SSL Certificate Setup<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.quape.com\/id\/self-hosted-focalboard-ubuntu-24-04-2\/#9_Access_Focalboard\" >#9 Access Focalboard<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.quape.com\/id\/self-hosted-focalboard-ubuntu-24-04-2\/#Deploy_on_High-Performance_Infrastructure\" >Deploy on High-Performance Infrastructure<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.quape.com\/id\/self-hosted-focalboard-ubuntu-24-04-2\/#Final_Thoughts\" >Final Thoughts<\/a><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"Self-Hosted_Focalboard_Benefits\"><\/span><strong>Self-Hosted Focalboard Benefits<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<table>\n<thead>\n<tr>\n<th>Feature<\/th>\n<th>Self-Hosted Focalboard<\/th>\n<th>Cloud-Based Solutions<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Data Ownership<\/td>\n<td>Full control on your server<\/td>\n<td>Stored on vendor servers<\/td>\n<\/tr>\n<tr>\n<td>Monthly Cost<\/td>\n<td>Free (open-source)<\/td>\n<td>$10-25 per user\/month<\/td>\n<\/tr>\n<tr>\n<td>Privacy<\/td>\n<td>Complete data sovereignty<\/td>\n<td>Subject to vendor policies<\/td>\n<\/tr>\n<tr>\n<td>Customization<\/td>\n<td>Unlimited access<\/td>\n<td>Limited to platform features<\/td>\n<\/tr>\n<tr>\n<td>Compliance<\/td>\n<td>Meet any regulation<\/td>\n<td>Dependent on vendor<\/td>\n<\/tr>\n<tr>\n<td>Features<\/td>\n<td>Kanban, tables, calendar, gallery<\/td>\n<td>Similar features<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>For more information, visit the <a href=\"https:\/\/www.focalboard.com\/\" target=\"_blank\" rel=\"noopener\">official Focalboard website<\/a> and check the <a href=\"https:\/\/github.com\/mattermost-community\/focalboard\" target=\"_blank\" rel=\"noopener\">GitHub repository<\/a>.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"1_Server_Connection\"><\/span><strong>#1 Server Connection<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Connect to your Ubuntu 24.04 server via SSH:<\/p>\n<pre><code class=\"language-bash\">ssh root@192.168.x.x\r\n<\/code><\/pre>\n<p>Replace <code>192.168.x.x<\/code> with your actual server IP address. Windows users can use PuTTY or Windows Terminal.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"2_Install_Required_Packages\"><\/span><strong>#2 Install Required Packages<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Update system packages:<\/p>\n<pre><code class=\"language-bash\">apt update\r\n<\/code><\/pre>\n<p>Install web server, SSL tools, and database:<\/p>\n<pre><code class=\"language-bash\">apt install wget unzip curl gnupg nginx python3-certbot-nginx\r\napt install postgresql postgresql-contrib\r\n<\/code><\/pre>\n<h3><span class=\"ez-toc-section\" id=\"3_Database_Configuration\"><\/span><strong>#3 Database Configuration<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Switch to PostgreSQL user and access the database shell:<\/p>\n<pre><code class=\"language-bash\">su - postgres\r\npsql\r\n<\/code><\/pre>\n<p>Create database and user:<\/p>\n<pre><code class=\"language-sql\">CREATE DATABASE focalboard;\r\nCREATE USER focaluser WITH PASSWORD 'YourSecurePass';\r\nGRANT ALL PRIVILEGES ON DATABASE focalboard TO focaluser;\r\n\\q\r\n<\/code><\/pre>\n<p>Replace <code>YourSecurePass<\/code> with your secure password. Exit to root user:<\/p>\n<pre><code class=\"language-bash\">exit\r\n<\/code><\/pre>\n<h3><span class=\"ez-toc-section\" id=\"4_Download_Focalboard\"><\/span><strong>#4 Download Focalboard<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Create installation directory and download the package:<\/p>\n<pre><code class=\"language-bash\">mkdir -p \/opt\/focalboard\r\ncd \/opt\/focalboard\r\nwget https:\/\/sourceforge.net\/projects\/focalboard.mirror\/files\/v7.10.6\/focalboard-server-linux-amd64.tar.gz\/download -O focalboard-server-linux-amd64.tar.gz\r\n<\/code><\/pre>\n<p>Extract and cleanup:<\/p>\n<pre><code class=\"language-bash\">tar -xzf focalboard-server-linux-amd64.tar.gz\r\nrm focalboard-server-linux-amd64.tar.gz\r\n<\/code><\/pre>\n<h3><span class=\"ez-toc-section\" id=\"5_Focalboard_Configuration\"><\/span><strong>#5 Focalboard Configuration<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Edit the configuration file:<\/p>\n<pre><code class=\"language-bash\">nano \/opt\/focalboard\/focalboard\/config.json\r\n<\/code><\/pre>\n<p>Update with your database credentials:<\/p>\n<pre><code class=\"language-json\">{\r\n  \"serverRoot\": \"http:\/\/localhost:8000\",\r\n  \"port\": 8000,\r\n  \"dbtype\": \"postgres\",\r\n  \"dbconfig\": \"postgres:\/\/focaluser:YourSecurePass@localhost\/focalboard?sslmode=disable&amp;connect_timeout=10\",\r\n  \"useSSL\": false,\r\n  \"webpath\": \".\/pack\",\r\n  \"filespath\": \".\/files\",\r\n  \"telemetry\": true,\r\n  \"session_expire_time\": 2592000,\r\n  \"session_refresh_time\": 18000,\r\n  \"localOnly\": false,\r\n  \"enablePublicSharedBoards\": true,\r\n  \"featureFlags\": {}\r\n}\r\n<\/code><\/pre>\n<p>Replace <code>YourSecurePass<\/code> with your actual password. Save with <code>CTRL+X<\/code>, <code>Y<\/code>, <code>Enter<\/code>.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"6_Setup_System_Service\"><\/span><strong>#6 Setup System Service<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Create systemd service file:<\/p>\n<pre><code class=\"language-bash\">nano \/etc\/systemd\/system\/focalboard.service\r\n<\/code><\/pre>\n<p>Add this configuration:<\/p>\n<pre><code class=\"language-ini\">[Unit]\r\nDescription=Focalboard Server\r\nAfter=network.target\r\n\r\n[Service]\r\nType=simple\r\nRestart=always\r\nRestartSec=5s\r\nExecStart=\/opt\/focalboard\/focalboard\/bin\/focalboard-server\r\nWorkingDirectory=\/opt\/focalboard\/focalboard\r\n\r\n[Install]\r\nWantedBy=multi-user.target\r\n<\/code><\/pre>\n<p>Enable and start the service:<\/p>\n<pre><code class=\"language-bash\">systemctl daemon-reload\r\nsystemctl enable focalboard\r\nsystemctl start focalboard\r\nsystemctl status focalboard\r\n<\/code><\/pre>\n<h3><span class=\"ez-toc-section\" id=\"7_Nginx_Configuration\"><\/span><strong>#7 Nginx Configuration<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Create Nginx site configuration:<\/p>\n<pre><code class=\"language-bash\">nano \/etc\/nginx\/sites-available\/focalboard.conf\r\n<\/code><\/pre>\n<p>Add this configuration (replace <code>example.com<\/code>):<\/p>\n<pre><code class=\"language-nginx\">upstream focalboard {\r\n    server 127.0.0.1:8000;\r\n    keepalive 32;\r\n}\r\n\r\nserver {\r\n    listen 80;\r\n    server_name example.com;\r\n\r\n    location \/ {\r\n        proxy_pass http:\/\/focalboard;\r\n        proxy_set_header Host $host;\r\n        proxy_set_header X-Real-IP $remote_addr;\r\n        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\r\n        proxy_set_header X-Forwarded-Proto $scheme;\r\n    }\r\n\r\n    location ~ \/ws\/* {\r\n        proxy_http_version 1.1;\r\n        proxy_set_header Upgrade $http_upgrade;\r\n        proxy_set_header Connection \"upgrade\";\r\n        proxy_pass http:\/\/focalboard;\r\n    }\r\n}\r\n<\/code><\/pre>\n<p>Enable the configuration:<\/p>\n<pre><code class=\"language-bash\">ln -s \/etc\/nginx\/sites-available\/focalboard.conf \/etc\/nginx\/sites-enabled\/\r\nrm \/etc\/nginx\/sites-enabled\/default\r\nnginx -t\r\nsystemctl reload nginx\r\n<\/code><\/pre>\n<h3><span class=\"ez-toc-section\" id=\"8_SSL_Certificate_Setup\"><\/span><strong>#8 SSL Certificate Setup<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Install SSL certificate with Let&#8217;s Encrypt:<\/p>\n<pre><code class=\"language-bash\">certbot --nginx -d example.com\r\n<\/code><\/pre>\n<p>Replace <code>example.com<\/code> with your domain. Follow the prompts to complete setup.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"9_Access_Focalboard\"><\/span><strong>#9 Access Focalboard<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Navigate to your domain in a web browser:<\/p>\n<pre><code>https:\/\/example.com\r\n<\/code><\/pre>\n<p>Create your first account through the registration page. Initial registration is always allowed, while additional users need invite links.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Deploy_on_High-Performance_Infrastructure\"><\/span><strong>Deploy on High-Performance Infrastructure<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Looking for reliable hosting for your Focalboard installation? <strong>QUAPE VPS<\/strong> 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.<\/p>\n<p>Get started with <a href=\"https:\/\/www.quape.com\/hosting\/vps-hosting\/\">QUAPE VPS Hosting<\/a> and experience the difference of enterprise-grade hardware for your self-hosted applications.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Final_Thoughts\"><\/span><strong>Final Thoughts<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>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.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>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 [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":16585,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[24],"tags":[455,456],"class_list":["post-16568","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-server","tag-focalboard","tag-self-hosted-focalboard"],"_links":{"self":[{"href":"https:\/\/www.quape.com\/id\/wp-json\/wp\/v2\/posts\/16568","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.quape.com\/id\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.quape.com\/id\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.quape.com\/id\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.quape.com\/id\/wp-json\/wp\/v2\/comments?post=16568"}],"version-history":[{"count":21,"href":"https:\/\/www.quape.com\/id\/wp-json\/wp\/v2\/posts\/16568\/revisions"}],"predecessor-version":[{"id":16590,"href":"https:\/\/www.quape.com\/id\/wp-json\/wp\/v2\/posts\/16568\/revisions\/16590"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.quape.com\/id\/wp-json\/wp\/v2\/media\/16585"}],"wp:attachment":[{"href":"https:\/\/www.quape.com\/id\/wp-json\/wp\/v2\/media?parent=16568"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.quape.com\/id\/wp-json\/wp\/v2\/categories?post=16568"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.quape.com\/id\/wp-json\/wp\/v2\/tags?post=16568"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}