{"id":1871,"date":"2026-09-05T09:35:51","date_gmt":"2026-09-05T04:05:51","guid":{"rendered":"https:\/\/cpanelfree.com\/blog\/how-to-host-pocketbase-backend-single-binary-vps\/"},"modified":"2026-09-12T12:44:44","modified_gmt":"2026-09-12T07:14:44","slug":"how-to-host-pocketbase-backend-single-binary-vps","status":"publish","type":"post","link":"https:\/\/cpanelfree.com\/blog\/how-to-host-pocketbase-backend-single-binary-vps\/","title":{"rendered":"How to Self-Host PocketBase on Ubuntu VPS (Lightweight Realtime SQLite Backend)"},"content":{"rendered":"<h2 id=\"step-1\">Why PocketBase Is the Ultimate Micro-Backend for Developers<\/h2>\n<p>Modern web and mobile application development often gets bogged down in microservice complexity: configuring separate PostgreSQL database instances, standing up Redis caches, setting up OAuth authentication microservices, provisioning AWS S3 buckets, and managing separate REST\/GraphQL API gateways. For solo developers, startups, mobile app creators, and MVPs, this operational overhead is overwhelming.<\/p>\n<p><!-- EXECUTIVE SUMMARY &amp; KEY TAKEAWAYS --><\/p>\n<div class=\"cpf-exec-summary\">\n<div class=\"cpf-exec-header\">\n    <span class=\"cpf-exec-title\"><br \/>\n      \u26a1 Executive Summary &amp; Key Takeaways<br \/>\n    <\/span><br \/>\n    <span class=\"cpf-exec-badge\">Verified Guide<\/span>\n  <\/div>\n<ul class=\"cpf-exec-list\">\n<li><strong>Core Architecture:<\/strong> Production setup of PocketBase on Ubuntu VPS (Lightweight Realtime SQLite Backend) engineered for maximum throughput and minimal memory footprint.<\/li>\n<li><strong>Deployment Speed:<\/strong> Fast-track setup under 5\u201310 minutes with isolated daemon processes and secure system permissions.<\/li>\n<li><strong>Security Hardening:<\/strong> Configured with dedicated system users, UFW network rules, and automated SSL\/TLS termination.<\/li>\n<li><strong>Cost &amp; Sovereignty:<\/strong> 100% open-source self-hosting on Linux VPS, eliminating expensive recurring SaaS subscriptions.<\/li>\n<\/ul>\n<\/div>\n<p><!-- ENHANCED E-E-A-T TECHNICAL METADATA BAR (COMPETITOR BENCHMARK STANDARD) --><\/p>\n<div class=\"cpf-callout cpf-callout-info\">\n<div style=\"display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 12px\">\n<div style=\"display: flex;flex-wrap: wrap;align-items: center;gap: 8px\">\n      <span class=\"cpf-eeat-pill os\">\ud83c\udfaf Difficulty: Intermediate<\/span><br \/>\n      <span class=\"cpf-eeat-pill os\">\u26a1 Est. Execution: 10\u201315 Mins<\/span><br \/>\n      <span style=\"color: #f59e0b;padding: 4px 10px;border-radius: 6px;font-weight: 600\">\u23f1\ufe0f 6 min read (1,105 words)<\/span>\n    <\/div>\n<p>    <span style=\"color: #38bdf8;font-weight: 600;font-size: 12.5px\">\ud83d\udd04 Verified September 2026 Edition<\/span>\n  <\/div>\n<div style=\"margin-top: 10px;padding-top: 10px;display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 10px;font-size: 12.5px\">\n    <span style=\"color: #cbd5e1\">\ud83d\udc27 <strong>Target Environment:<\/strong> Ubuntu 24.04 \/ 22.04 LTS \u2022 Debian 12 \u2022 AlmaLinux 9<\/span><br \/>\n    <span style=\"color: #94a3b8\">\ud83d\udee1\ufe0f <strong>Reviewed by:<\/strong> Senior Linux Systems Architect<\/span>\n  <\/div>\n<\/div>\n<div style=\"display: flex;flex-wrap: wrap;align-items: center;gap: 10px;border-radius: 10px;padding: 10px 16px;margin: 20px 0 24px 0;font-size: 13px;color: #94a3b8\">\n  <span style=\"display: inline-flex;align-items: center;gap: 5px;color: #38bdf8;padding: 3px 9px;border-radius: 6px;font-weight: 600\">\u23f1\ufe0f 5 min read (903 words)<\/span><br \/>\n  <span style=\"display: inline-flex;align-items: center;gap: 5px;color: #10b981;padding: 3px 9px;border-radius: 6px;font-weight: 600\">\ud83d\udee1\ufe0f Verified on Ubuntu 24.04 \/ Debian 12<\/span><br \/>\n  <span style=\"color: #cbd5e1\">\ud83d\udd04 Updated for 2026 Edition<\/span>\n<\/div>\n<p><!-- TABLE OF CONTENTS --><\/p>\n<div class=\"cpf-toc\">\n<div style=\"display: flex;align-items: center;justify-content: space-between;margin-bottom: 14px;padding-bottom: 10px\">\n<div class=\"cpf-toc-title\">\n      <span style=\"font-size: 18px\">\ud83d\udcd1<\/span> Table of Contents\n    <\/div>\n<p>    <span class=\"cpf-exec-title\">Guide Index<\/span>\n  <\/div>\n<div class=\"cpf-toc-links\">\n    <a href=\"#step-1\" class=\"cpf-toc-link\"><span class=\"cpf-toc-num\">1<\/span><span class=\"cpf-toc-text\">Why PocketBase Is the Ultimate Micro-Backend for Developers<\/span><span class=\"cpf-toc-arrow\">&rsaquo;<\/span><\/a><a href=\"#step-2\" class=\"cpf-toc-link\"><span class=\"cpf-toc-num\">2<\/span><span class=\"cpf-toc-text\">Step 1: Downloading and Installing the PocketBase Binary<\/span><span class=\"cpf-toc-arrow\">&rsaquo;<\/span><\/a><a href=\"#step-3\" class=\"cpf-toc-link\"><span class=\"cpf-toc-num\">3<\/span><span class=\"cpf-toc-text\">Step 2: Creating a Dedicated System User and Data Directory<\/span><span class=\"cpf-toc-arrow\">&rsaquo;<\/span><\/a><a href=\"#step-4\" class=\"cpf-toc-link\"><span class=\"cpf-toc-num\">4<\/span><span class=\"cpf-toc-text\">Step 3: Configuring Systemd Service Daemon<\/span><span class=\"cpf-toc-arrow\">&rsaquo;<\/span><\/a><a href=\"#step-5\" class=\"cpf-toc-link\"><span class=\"cpf-toc-num\">5<\/span><span class=\"cpf-toc-text\">Step 4: Nginx Reverse Proxy with Real-Time WebSockets &amp; SSL<\/span><span class=\"cpf-toc-arrow\">&rsaquo;<\/span><\/a><a href=\"#step-6\" class=\"cpf-toc-link\"><span class=\"cpf-toc-num\">6<\/span><span class=\"cpf-toc-text\">Step 5: Automated Daily SQLite Database Backup Script<\/span><span class=\"cpf-toc-arrow\">&rsaquo;<\/span><\/a><a href=\"#step-7\" class=\"cpf-toc-link\"><span class=\"cpf-toc-num\">7<\/span><span class=\"cpf-toc-text\">PocketBase vs Supabase vs Firebase Comparison<\/span><span class=\"cpf-toc-arrow\">&rsaquo;<\/span><\/a><a href=\"#step-8\" class=\"cpf-toc-link\"><span class=\"cpf-toc-num\">8<\/span><span class=\"cpf-toc-text\">Leveraging PocketBase JavaScript \/ Go Hooks &amp; Extensibility<\/span><span class=\"cpf-toc-arrow\">&rsaquo;<\/span><\/a><a href=\"#step-9\" class=\"cpf-toc-link\"><span class=\"cpf-toc-num\">9<\/span><span class=\"cpf-toc-text\">Configuring S3-Compatible Object Storage for Uploads<\/span><span class=\"cpf-toc-arrow\">&rsaquo;<\/span><\/a>\n  <\/div>\n<\/div>\n<p><strong>PocketBase<\/strong> is an open-source, all-in-one backend packaged as a <strong>single standalone Go binary<\/strong>. Featuring an embedded SQLite database with WAL (Write-Ahead Logging) mode, real-time WebSocket event broadcasting, built-in user authentication (with OAuth2 providers like Google, GitHub, Apple), S3\/local file storage, and an elegant visual administrative dashboard, PocketBase runs comfortably on an entry-level $3\/month VPS while consuming less than 15MB of idle RAM.<\/p>\n<p>In this technical tutorial, we will configure PocketBase as a systemd background service on Ubuntu 24.04\/22.04 LTS, secure the administrative web portal behind an Nginx reverse proxy with SSL, enable real-time WebSockets, and implement automated daily database snapshot backups.<\/p>\n<h2 id=\"step-2\">Step 1: Downloading and Installing the PocketBase Binary<\/h2>\n<p>PocketBase requires no external database daemons or complex language runtimes. Download the compiled Linux binary directly:<\/p>\n<pre><code># Create dedicated directory and download binary\nsudo mkdir -p \/var\/www\/pocketbase\ncd \/tmp\ncurl -LO https:\/\/github.com\/pocketbase\/pocketbase\/releases\/download\/v0.22.14\/pocketbase_0.22.14_linux_amd64.zip\n\n# Unzip binary and place into system PATH\nsudo apt update &amp;&amp; sudo apt install -y unzip nginx certbot python3-certbot-nginx\nunzip pocketbase_0.22.14_linux_amd64.zip\nsudo mv pocketbase \/usr\/local\/bin\/\nsudo chmod +x \/usr\/local\/bin\/pocketbase\n\n# Verify PocketBase CLI\npocketbase --version<\/code><\/pre>\n<p><!-- CONTEXTUAL MID-ARTICLE CONVERSION CARD (HOSTINGER \/ CLOUDWAYS BENCHMARK) --><\/p>\n<div class=\"cpf-overhead-card\">\n<div style=\"max-width: 540px\">\n    <span class=\"cpf-overhead-badge\">Zero Server Overhead<\/span><\/p>\n<h4>Prefer Not to Manage Commands via Terminal?<\/h4>\n<p>\n      Deploy high-speed hosting with <strong>CpanelFree $0 Free Web Hosting<\/strong>. Enjoy authentic cPanel, unmetered NVMe SSD storage, PHP 8.3, and automatic SSL without server maintenance.\n    <\/p>\n<\/p>\n<\/div>\n<div>\n    <a href=\"https:\/\/cpanelfree.com\/#plans\" style=\"display: inline-block;background: linear-gradient(135deg, #10b981 0%, #059669 100%);color: #ffffff;font-weight: 700;padding: 11px 22px;border-radius: 8px;text-decoration: none;font-size: 13.5px;white-space: nowrap\">Get Free cPanel Account &rarr;<\/a>\n  <\/div>\n<\/div>\n<h2 id=\"step-3\">Step 2: Creating a Dedicated System User and Data Directory<\/h2>\n<p>For strict security isolation, never run web services as root:<\/p>\n<pre><code># Create dedicated system user\nsudo useradd --no-create-home --shell \/bin\/false pocketbase\nsudo chown -R pocketbase:pocketbase \/var\/www\/pocketbase\nsudo chmod 750 \/var\/www\/pocketbase<\/code><\/pre>\n<h2 id=\"step-4\">Step 3: Configuring Systemd Service Daemon<\/h2>\n<p>Create a systemd unit at <code>\/etc\/systemd\/system\/pocketbase.service<\/code> to ensure PocketBase starts on server boot and recovers automatically from errors:<\/p>\n<pre><code>[Unit]\nDescription=PocketBase All-In-One Realtime Backend\nAfter=network.target\n\n[Service]\nUser=pocketbase\nGroup=pocketbase\nType=simple\nWorkingDirectory=\/var\/www\/pocketbase\nExecStart=\/usr\/local\/bin\/pocketbase serve --http=127.0.0.1:8090 --dir=\/var\/www\/pocketbase\/pb_data\nRestart=always\nRestartSec=3\nLimitNOFILE=65535\n\n[Install]\nWantedBy=multi-user.target<\/code><\/pre>\n<p>Enable and start the service daemon:<\/p>\n<pre><code>sudo systemctl daemon-reload\nsudo systemctl enable --now pocketbase\nsudo systemctl status pocketbase --no-pager<\/code><\/pre>\n<h2 id=\"step-5\">Step 4: Nginx Reverse Proxy with Real-Time WebSockets &amp; SSL<\/h2>\n<p>Expose the administrative UI and API endpoints over HTTPS by creating <code>\/etc\/nginx\/sites-available\/pocketbase.example.com<\/code>:<\/p>\n<pre><code>server {\n    listen 80;\n    server_name pocketbase.example.com;\n\n    client_max_body_size 50M;\n\n    location \/ {\n        proxy_pass http:\/\/127.0.0.1:8090;\n        proxy_http_version 1.1;\n        proxy_set_header Upgrade $http_upgrade;\n        proxy_set_header Connection \"upgrade\";\n        proxy_set_header Host $host;\n        proxy_set_header X-Real-IP $remote_addr;\n        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n        proxy_set_header X-Forwarded-Proto $scheme;\n        proxy_read_timeout 300s;\n    }\n}<\/code><\/pre>\n<p>Enable the virtual host and acquire a free Let&#8217;s Encrypt SSL certificate:<\/p>\n<pre><code>sudo ln -s \/etc\/nginx\/sites-available\/pocketbase.example.com \/etc\/nginx\/sites-enabled\/\nsudo nginx -t &amp;&amp; sudo systemctl reload nginx\nsudo certbot --nginx -d pocketbase.example.com<\/code><\/pre>\n<h2 id=\"step-6\">Step 5: Automated Daily SQLite Database Backup Script<\/h2>\n<p>Because SQLite stores all data in a single file (<code>data.db<\/code>), creating reliable, consistent backups during active writes is trivial using SQLite&#8217;s online backup API via PocketBase CLI:<\/p>\n<pre><code># Create automated backup cron script (\/usr\/local\/bin\/backup-pocketbase.sh)\n#!\/bin\/bash\nset -e\nBACKUP_DIR=\"\/var\/backups\/pocketbase\/$(date +%Y%m%d)\"\nmkdir -p $BACKUP_DIR\n\n# Create atomic SQLite snapshot\n\/usr\/local\/bin\/pocketbase backup create --dir=\/var\/www\/pocketbase\/pb_data\n\n# Move and compress zip snapshot\nmv \/var\/www\/pocketbase\/pb_data\/backups\/*.zip $BACKUP_DIR\/\nfind \/var\/backups\/pocketbase\/ -type d -mtime +30 -exec rm -rf {} +\necho \"PocketBase atomic backup completed successfully!\"<\/code><\/pre>\n<h2 id=\"step-7\">PocketBase vs Supabase vs Firebase Comparison<\/h2>\n<table class=\"cpf-table\">\n<thead>\n<tr>\n<th>Feature \/ Spec<\/th>\n<th>PocketBase<\/th>\n<th>Supabase<\/th>\n<th>Google Firebase<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Architecture<\/strong><\/td>\n<td><strong>Single Go Binary + SQLite<\/strong><\/td>\n<td>11 Docker Containers + Postgres<\/td>\n<td>Proprietary Cloud SaaS<\/td>\n<\/tr>\n<tr>\n<td><strong>Idle RAM Footprint<\/strong><\/td>\n<td><strong>~15 MB RAM<\/strong><\/td>\n<td>~1,200 MB RAM<\/td>\n<td>N\/A (Managed Cloud)<\/td>\n<\/tr>\n<tr>\n<td><strong>Backup Simplicity<\/strong><\/td>\n<td><strong>1 Single .db file copy<\/strong><\/td>\n<td>pg_dumpall SQL export<\/td>\n<td>Cloud snapshot exports<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\"step-8\">Leveraging PocketBase JavaScript \/ Go Hooks &amp; Extensibility<\/h2>\n<p>While PocketBase provides an intuitive no-code admin dashboard for creating collections, user authentication, and defining field rules, developers can write custom backend business logic using embedded JavaScript PB hooks in <code>pb_hooks\/<\/code>:<\/p>\n<pre><code>\/\/ pb_hooks\/main.pb.js - Custom API Endpoint &amp; Event Interceptor\nrouterAdd(\"GET\", \"\/api\/v1\/custom-stats\", (c) =&gt; {\n    const totalUsers = $app.dao().findTotalRowsByFilter(\"users\", \"verified = true\");\n    return c.json(200, {\n        \"status\": \"healthy\",\n        \"verified_users\": totalUsers,\n        \"timestamp\": new Date().toISOString()\n    });\n});\n\n\/\/ Automatically trigger welcome email upon new user registration\nonModelAfterCreate((e) =&gt; {\n    if (e.model.tableName() === \"users\") {\n        $app.newMailClient().send({\n            from: { address: \"no-reply@cpanelfree.com\", name: \"CpanelFree Cloud\" },\n            to: [{ address: e.model.get(\"email\") }],\n            subject: \"Welcome to our platform!\",\n            html: \"Thank you for registering on our high-speed infrastructure.\"\n        });\n    }\n}, \"users\");<\/code><\/pre>\n<h2 id=\"step-9\">Configuring S3-Compatible Object Storage for Uploads<\/h2>\n<p>If you prefer storing user file uploads on S3 object storage rather than local VPS SSD storage, configure S3 settings directly within the PocketBase Admin UI under <strong>Settings &gt; Files storage &gt; Use S3 storage<\/strong>:<\/p>\n<ul>\n<li><strong>Endpoint:<\/strong> <code>https:\/\/s3.example.com<\/code> (or AWS \/ Cloudflare R2)<\/li>\n<li><strong>Bucket Name:<\/strong> <code>app-attachments<\/code><\/li>\n<li><strong>Access Key &amp; Secret Key:<\/strong> Your MinIO or AWS IAM credentials<\/li>\n<\/ul>\n<div class=\"cpf-exec-summary\">\n<h3>Recommended Related Technical Guides<\/h3>\n<ul class=\"cpf-exec-list\">\n<li><a href=\"https:\/\/cpanelfree.com\/blog\/how-to-self-host-supabase-alternative-firebase-vps\/\" class=\"cpf-overhead-link\">Self-Hosting Supabase Backend on Ubuntu VPS<\/a><\/li>\n<li class=\"cpf-related-item\"><a href=\"https:\/\/cpanelfree.com\/blog\/how-to-deploy-nextjs-app-ubuntu-vps-pm2-nginx\/\" class=\"cpf-related-link\">Deploying Next.js Frontends on Cloud VPS<\/a><\/li>\n<li class=\"cpf-related-item\"><a href=\"https:\/\/cpanelfree.com\/blog\/how-to-secure-linux-vps-fail2ban-ufw-ssh\/\" class=\"cpf-related-link\">Securing Linux Cloud VPS with UFW and Fail2ban<\/a><\/li>\n<\/ul>\n<\/div>\n<div class=\"cpf-related-guides\">\n<h3>Host Lightweight App Backends on CpanelFree Cloud VPS<\/h3>\n<p>Scale your web and mobile applications with high-speed NVMe storage, dedicated memory channels, and 100% free hosting and VPS options.<\/p>\n<p>  <a href=\"https:\/\/cpanelfree.com\/\" style=\"background-color: #ffffff;color: #0284c7;font-weight: 700;padding: 12px 28px;border-radius: 8px;text-decoration: none;display: inline-block\">Get Free Cloud Hosting Today &rarr;<\/a>\n<\/div>\n<div class=\"cpf-callout cpf-callout-info\">\n<h3>\n        <span style=\"margin-right: 8px\">\ud83d\udd17<\/span> Recommended Related Technical Guides:<br \/>\n    <\/h3>\n<ul class=\"cpf-related-list\">\n<li class=\"cpf-related-item\"><a href=\"https:\/\/cpanelfree.com\/blog\/how-to-host-website-free-forever-guide\/\" class=\"cpf-related-link\">How to Host a Website for Free Forever: Complete Beginner Guide (2026)<\/a><\/li>\n<li class=\"cpf-related-item\"><a href=\"https:\/\/cpanelfree.com\/blog\/free-wordpress-hosting-softaculous-installer\/\" class=\"cpf-related-link\">Top 5 Free WordPress Hosting Services with 1-Click Softaculous Installer<\/a><\/li>\n<li class=\"cpf-related-item\"><a href=\"https:\/\/cpanelfree.com\/blog\/how-to-backup-linux-vps-to-cloud-storage-s3-rclone\/\" class=\"cpf-related-link\">How to Automatically Backup Your Linux VPS to Cloud Storage (S3 \/ Rclone Guide)<\/a><\/li>\n<li class=\"cpf-related-item\"><a href=\"https:\/\/cpanelfree.com\/blog\/how-to-get-free-cloud-vps-forever\/\" class=\"cpf-related-link\">How to Get a Free Cloud VPS Forever (Oracle, Google Cloud, AWS Free Tier)<\/a><\/li>\n<li class=\"cpf-related-item\"><a href=\"https:\/\/merahost.org\/vps\/\" target=\"_blank\" rel=\"noopener\" class=\"cpf-related-link\">Deploy High-Performance Cloud VPS on MeraHost (KVM NVMe, Price Lock)<\/a><\/li>\n<\/ul>\n<\/div>\n<div class=\"cpf-conversion-card\" style=\"background: linear-gradient(135deg, #07193b 0%, #0b2a63 50%, #0f3885 100%) !important; border: 1px solid rgba(56, 189, 248, 0.35) !important; border-radius: 14px !important; padding: 28px 24px !important; margin: 36px 0 !important; text-align: center !important; box-shadow: 0 10px 30px rgba(7, 25, 59, 0.2) !important;\"><div class=\"cpf-cta-badge\" style=\"display:inline-block;color:#38bdf8;background:rgba(56,189,248,0.12);border:1px solid rgba(56,189,248,0.3);padding:4px 14px;border-radius:20px;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:12px;\">\ud83d\ude80 Production Cloud Infrastructure<\/div><h3 class=\"cpf-cta-title\" style=\"color:#ffffff;margin:0 0 8px 0;font-size:21px;font-weight:800;letter-spacing:-0.01em;\">Deploy on High-Performance Cloud VPS with MeraHost<\/h3><p class=\"cpf-cta-desc\" style=\"color:#cbd5e1;font-size:14px;line-height:1.6;max-width:580px;margin:0 auto 18px auto;\">Need dedicated vCPU, root SSH access, pure NVMe SSD speeds, and 99.95% uptime SLA for your production stack? Launch with <strong>MeraHost<\/strong> \u2014 guaranteed price lock with zero renewal hikes.<\/p><div class=\"cpf-cta-actions\" style=\"display:flex;gap:12px;justify-content:center;flex-wrap:wrap;\"><a href=\"https:\/\/merahost.org\/vps\/\" target=\"_blank\" rel=\"noopener\" class=\"cpf-cta-btn\" style=\"display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0284c7 0%,#0369a1 100%) !important;background-color:#0284c7 !important;color:#ffffff !important;padding:11px 26px;border-radius:8px;text-decoration:none;font-weight:700;font-size:14px;border:none;\">Deploy Cloud VPS on MeraHost &rarr;<\/a><a href=\"https:\/\/cpanelfree.com\/order\/free\" class=\"cpf-cta-btn\" style=\"display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.08) !important;border:1px solid rgba(255,255,255,0.2) !important;color:#ffffff !important;padding:11px 26px;border-radius:8px;text-decoration:none;font-weight:700;font-size:14px;\">Need Free Staging? Claim Free cPanel<\/a><\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Why PocketBase Is the Ultimate Micro-Backend for Developers Modern web and mobile application development often gets bogged down in microservice complexity: configuring separate PostgreSQL database instances, standing up Redis caches, setting up OAuth authentication microservices, provisioning AWS S3 buckets, and managing separate REST\/GraphQL API gateways. For solo developers, startups, mobile app creators, and MVPs, this &#8230; <a title=\"How to Self-Host PocketBase on Ubuntu VPS (Lightweight Realtime SQLite Backend)\" class=\"read-more\" href=\"https:\/\/cpanelfree.com\/blog\/how-to-host-pocketbase-backend-single-binary-vps\/\" aria-label=\"Read more about How to Self-Host PocketBase on Ubuntu VPS (Lightweight Realtime SQLite Backend)\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":2502,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[166],"tags":[],"class_list":["post-1871","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-developer-stacks"],"_links":{"self":[{"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/posts\/1871","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/comments?post=1871"}],"version-history":[{"count":11,"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/posts\/1871\/revisions"}],"predecessor-version":[{"id":4170,"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/posts\/1871\/revisions\/4170"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/media\/2502"}],"wp:attachment":[{"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/media?parent=1871"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/categories?post=1871"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/tags?post=1871"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}