Close Menu
GeekBlog

    Subscribe to Updates

    Get the latest creative news from FooBar about art, design and business.

    What's Hot

    YouTube Rewrote Its Gameplay Violence Rules Before GTA 6, and It All Comes Down to 15 Seconds

    September 9, 2026

    OpenAI Says It Built an Automated Research Intern. It Also Wrote the Test and Graded Its Own Paper.

    September 9, 2026

    Bernie Sanders Wants a Corporate Death Penalty for AI Labs. The Hard Part Is Defining What He Is Banning.

    September 9, 2026
    Facebook X (Twitter) Instagram Threads
    GeekBlog
    • Home
    • Mobile
    • Tech News
    • Blog
    • Gaming
    • Smartwatch
    • How-To Guides
    • AI & Software
    Facebook
    GeekBlog
    Home»Blog»How to Install Discourse on Hostinger (KVM VPS Step by Step)
    Blog

    How to Install Discourse on Hostinger (KVM VPS Step by Step)

    Marcus BennettBy Marcus BennettSeptember 9, 202611 Mins Read
    Share Facebook Twitter Pinterest LinkedIn Tumblr Email Copy Link
    Share
    Facebook Twitter LinkedIn Pinterest Email Copy Link

    You can install Discourse on Hostinger, but only on a Hostinger VPS plan, because Discourse runs inside Docker and needs root access to a Linux server. Hostinger’s shared, cloud and WordPress hosting plans do not give you Docker or root, so a forum will never work there. On a KVM VPS the process is the same official install that Discourse documents for any cloud provider: point a domain at the server, run the installer, answer the SMTP questions, and let Let’s Encrypt handle the certificate.

    Quick answer: Buy a Hostinger KVM 2 VPS (2 vCPU, 8 GB RAM) or larger, choose Ubuntu 24.04 as the OS, create an A record for your forum subdomain, SSH in as root and run the official installer: wget -qO- https://raw.githubusercontent.com/discourse/discourse_docker/main/install-discourse | sudo bash. Enter your hostname, admin email and SMTP credentials when prompted, wait for the build, then open the site to finish the admin wizard.

    This guide assumes you have never run Docker but can paste commands into a terminal. It covers plan selection, DNS and email, the installer, TLS, backups and upgrades. If you have done this before, our Discourse on DigitalOcean tutorial follows the same shape; only the first two sections here are Hostinger specific.

    Why shared hosting does not work and which VPS plan to pick

    Discourse ships as a Docker container built from the discourse_docker repository, running Ruby on Rails, PostgreSQL, Redis, Nginx and Sidekiq inside it. There is no PHP or cPanel installer, and the project supports no install path other than Docker. Shared hosting gives you a PHP runtime and a file manager, which is the wrong tool entirely.

    At the time of writing, Hostinger’s VPS lineup on its VPS hosting page consists of four KVM plans. The Discourse project’s published minimums are 1 GB of RAM with swap, 1 CPU core and 10 GB of disk, with 2 GB of RAM and 2 cores recommended, so every plan in the table clears the bar, but the cheapest one leaves little room once your forum grows.

    Hostinger planvCPURAMNVMe storageFit for Discourse
    KVM 114 GB50 GBWorks for a small private community; rebuilds are slow on one core
    KVM 228 GB100 GBBest default for most public forums
    KVM 4416 GB200 GBBusy forums, heavy uploads, or Discourse plus other containers
    KVM 8832 GB400 GBLarge communities or separate data and web containers

    Prices change with promotions and term length, so check the page for the current number. All four plans include free weekly backups, which we will use as a second safety net later.

    Note: Hostinger’s VPS panel lists Discourse among its one click application templates. It is a reasonable shortcut, but this guide uses the official installer on a plain Ubuntu image so that you understand what is on the box and can follow Discourse’s own upgrade and troubleshooting docs without translation.

    Step 1: Deploy the VPS with Ubuntu

    In hPanel, open VPS, pick your server, and choose Operating system in the left menu. Select Ubuntu 24.04 LTS (plain, not a template), set a strong root password, and confirm. The reinstall takes a couple of minutes. While you wait, note the server’s public IPv4 address from the Overview tab.

    Add your SSH key under Settings then SSH keys so you are not typing the root password every time. Then connect and update the base system:

    ssh root@YOUR_SERVER_IP
    apt update && apt full-upgrade -y
    timedatectl set-timezone America/New_York
    reboot

    Hostinger’s VPS firewall (in hPanel under Firewall) is off by default. If you enable it, allow inbound TCP 22, 80 and 443 before you continue, because the installer will fail the Let’s Encrypt step if port 80 is blocked.

    Step 2: Point DNS at the server

    Recommended for you:

    How to Use the TikTok for Developers Documentation
    Blog·Sep 9, 2026

    How to Use the TikTok for Developers Documentation

    Discourse needs a real hostname before you install, because the certificate is issued during the build. Decide on the forum address now, for example forum.example.com. In whatever DNS provider manages example.com (Hostinger’s DNS zone editor if the domain is with them), add an A record with the name forum pointing to the VPS IPv4 address and a low TTL. If Hostinger assigned you an IPv6 address, add a matching AAAA record too, or leave IPv6 out entirely; a mismatched AAAA record is a common cause of certificate failures.

    Confirm propagation from the server itself before moving on:

    apt install -y dnsutils
    dig +short forum.example.com A

    The output must be your VPS IP. If it is empty or shows an old value, wait and try again. Do not start the installer until this resolves correctly.

    Step 3: Get SMTP credentials

    Discourse sends every account activation, password reset and notification by email, so a forum without working outbound mail is unusable. Do not try to use the VPS as its own mail server; Hostinger, like most providers, restricts outbound port 25 and your mail would land in spam anyway. Use a transactional email service such as Amazon SES, Mailgun, SendGrid, Postmark or Brevo, verify your sending domain there, and collect four values: SMTP host, port (587 is the safe choice), username and password.

    The current installer lets you skip SMTP and rely on social logins, but that only delays the problem. Set it up now, along with the SPF and DKIM records your provider gives you.

    Step 4: Run the Discourse installer

    The official cloud install guide now provides a single bootstrap script that installs Docker, clones the launcher into /var/discourse and starts the setup wizard. Run it as root:

    wget -qO- https://raw.githubusercontent.com/discourse/discourse_docker/main/install-discourse | sudo bash

    If you prefer to see each step, the classic manual route still works and ends in the same place:

    apt install -y docker.io git
    git clone https://github.com/discourse/discourse_docker.git /var/discourse
    cd /var/discourse
    chmod 700 containers
    ./discourse-setup

    The wizard asks for the hostname (forum.example.com), the admin email address (this account becomes the first administrator), the SMTP host, port, username and password, and an optional Let’s Encrypt notification address. It writes those answers into /var/discourse/containers/app.yml, then bootstraps the container. On a KVM 2 the bootstrap typically takes several minutes because it compiles assets and initializes PostgreSQL; on KVM 1 expect it to take noticeably longer. Do not interrupt it.

    When it finishes, browse to https://forum.example.com. You should see the Discourse landing page with a valid certificate and a prompt to register the admin account using the email you entered. Complete that, confirm the activation email (which also proves SMTP is working), and step through the setup wizard for the forum name, logo and default settings.

    Tip: Every setting the wizard wrote lives in app.yml. To change SMTP details, add plugins, or adjust memory tuning later, edit that file with nano /var/discourse/containers/app.yml and run ./launcher rebuild app. The rebuild takes the forum offline for a few minutes, so do it during quiet hours.

    Step 5: Verify TLS and tune the server

    The installer requests a Let’s Encrypt certificate automatically and renews it from inside the container, so there is nothing to schedule. Verify it with curl -I https://forum.example.com and confirm you get a 200 or 302 with no certificate warning. If you see a self signed certificate, DNS was not resolving at build time; fix the record and rebuild.

    The setup script checks for swap and offers to create it on small instances. On KVM 1 accept that offer; on KVM 2 and above it is still cheap insurance against an out of memory kill during a rebuild:

    fallocate -l 2G /swapfile
    chmod 600 /swapfile
    mkswap /swapfile && swapon /swapfile
    echo '/swapfile none swap sw 0 0' >> /etc/fstab

    The installer sizes UNICORN_WORKERS and db_shared_buffers in app.yml based on the RAM it detects, so you rarely need to touch those by hand. If you later resize the VPS, rerun ./discourse-setup to have it recalculate.

    Step 6: Backups

    You have two layers. Discourse’s own backups (Admin, then Backups) dump the database and uploads to a tarball inside /var/discourse/shared/standalone/backups. Turn on automatic backups in Admin, Settings, Backups, set a daily frequency, and point them at an S3 compatible bucket so the archive is not sitting on the same disk as the forum. Hostinger’s weekly VPS snapshots are the second layer and will restore the whole machine, but they are weekly, so treat them as disaster recovery rather than your primary backup.

    Test a restore once on a temporary VPS. A backup you have never restored is a hope, not a plan. It is the same approach we recommend in our guide to installing Grafana on Hostinger: keep application level exports off box and treat provider snapshots as a bonus.

    Upgrading Discourse

    Discourse expects to be updated often. Minor updates happen from the browser at https://forum.example.com/admin/upgrade: click Upgrade on the Discourse row and watch the log. Roughly every few months you should also refresh the launcher and rebuild from the shell, which pulls the newest base image and applies Docker and PostgreSQL changes that the web upgrader cannot:

    cd /var/discourse
    git pull
    ./launcher rebuild app

    Keep Ubuntu current too with apt update && apt full-upgrade -y; Docker restarts the container automatically after a reboot.

    Troubleshooting

    The build stops at “Let’s Encrypt” or the site shows a certificate error

    Port 80 was unreachable or DNS did not point at this server when the container started. Check the hPanel firewall, run dig +short forum.example.com from the VPS, remove any stale AAAA record, then ./launcher rebuild app.

    Activation email never arrives

    Start with ./launcher logs app | grep -i smtp to see the actual error. Most failures are a wrong port, an unverified sending domain at the email provider, or a password with special characters that needs quoting in app.yml. Also confirm SPF and DKIM records exist.

    Rebuild fails with an out of memory error

    Add the swap file from Step 5, or temporarily lower UNICORN_WORKERS in app.yml to 2, then rebuild. On KVM 1 this is the most common failure.

    “Port 80 is already in use”

    Recommended for you:

    How to Use Regular Expressions in Jinja2
    Blog·Sep 9, 2026

    How to Use Regular Expressions in Jinja2

    Something else, usually Apache or Nginx from a template image, is bound to the port. Run ss -tlnp | grep ':80 ', stop and disable that service (systemctl disable --now nginx), and rerun the setup. Starting from a plain Ubuntu image avoids this entirely, which is one reason to skip the template and the reason this guide differs from our CyberPanel on Hostinger walkthrough, where a web server on port 80 is the point.

    Disk fills up over time

    Old Docker images and local backups accumulate. Run ./launcher cleanup to remove unused images, and set the backup retention count in Admin, Settings, Backups so old tarballs are pruned once they are safely in your bucket.

    Frequently asked questions

    Can I install Discourse on Hostinger shared or WordPress hosting?

    No. Discourse requires Docker and root access to a Linux server, and Hostinger’s shared, cloud and managed WordPress plans do not provide either. You need one of the KVM VPS plans. If you already pay for shared hosting, you can keep your main site there and run only the forum on the VPS.

    Which Hostinger VPS plan is best for Discourse?

    KVM 2, with 2 vCPU and 8 GB of RAM, is the sensible default and matches the Discourse project’s recommended specs with room to grow. KVM 1 works for a small or private forum if you add swap. Move to KVM 4 when you host large uploads, many concurrent users, or extra containers.

    Do I need a separate domain for the forum?

    No. A subdomain such as forum.yourdomain.com is the normal setup and is what the installer expects. Create an A record pointing at the VPS before you run the installer, because the Let’s Encrypt certificate is requested during the initial build and needs the hostname to resolve.

    Can I use Hostinger’s email plan for Discourse SMTP?

    Technically you can enter any SMTP server, but mailbox style plans are built for a person sending a few messages, not an application sending notifications to every member. A transactional provider with a verified domain gives you better deliverability, proper bounce handling and DKIM signing, which Discourse relies on to keep mail out of spam.

    The bottom line

    Installing Discourse on Hostinger comes down to one decision and one command. The decision is to buy a KVM VPS instead of shared hosting; the command is the official installer, which handles Docker, the container build and the certificate for you. Everything else in this guide is preparation (DNS and SMTP) and housekeeping (backups and upgrades).

    Get DNS resolving before you start, use a transactional email provider rather than a mailbox, and schedule off box backups on day one. Do that and a KVM 2 will run a healthy community forum for years with a monthly git pull and rebuild as the only maintenance.

    Share. Facebook Twitter Pinterest LinkedIn Tumblr Telegram Email Copy Link
    Previous ArticleSamsung Galaxy A17 4G and A17 5G Listed in Europe, Here Are the Prices
    Next Article How to Restart a Pod in Minikube (4 Methods That Work)
    Marcus Bennett

      Marcus Bennett is GeekBlog's Android expert, covering everything from Google's Pixel line and Samsung Galaxy flagships to OnePlus, Nothing, Xiaomi and the broader Android ecosystem. He follows each Android OS release, One UI and Pixel Feature Drop, custom ROMs and the foldable wave, translating spec sheets and beta builds into hands-on guidance for readers choosing their next Android phone, tablet or wearable.

      Related Posts

      11 Mins Read

      South Carolina vs Michigan: Which State Is Better to Live In?

      11 Mins Read

      Are There Cordless Vacuums With Replaceable Batteries?

      12 Mins Read

      How to Use Parabolic SAR (Stop and Reverse) for Day Trading

      10 Mins Read

      Michigan vs Illinois: Which State Is Better to Live In?

      11 Mins Read

      California or Florida: Which State Is Better to Move To?

      11 Mins Read

      Best Front End Development Books to Learn From in 2026

      Top Posts

      How to Change HEIC to JPG on iPhone, Mac, Android and Windows (No Software Needed)

      September 3, 20266 Views

      How to Use YouTube: A Beginner’s Guide

      July 7, 20266 Views

      Gal Gadot’s Lawyers Spent Six Months on One AI Clause. Then SAG Called Them for Pointers.

      September 2, 20265 Views
      Stay In Touch
      • Facebook

      Subscribe to Updates

      Get the latest tech news from FooBar about tech, design and biz.

      Most Popular

      How to Change HEIC to JPG on iPhone, Mac, Android and Windows (No Software Needed)

      September 3, 20266 Views

      Gal Gadot’s Lawyers Spent Six Months on One AI Clause. Then SAG Called Them for Pointers.

      September 2, 20265 Views

      Best Android Smartwatches in 2026: Which One Actually Fits Your Phone

      September 7, 20262 Views
      Our Picks

      YouTube Rewrote Its Gameplay Violence Rules Before GTA 6, and It All Comes Down to 15 Seconds

      September 9, 2026

      OpenAI Says It Built an Automated Research Intern. It Also Wrote the Test and Graded Its Own Paper.

      September 9, 2026

      Bernie Sanders Wants a Corporate Death Penalty for AI Labs. The Hard Part Is Defining What He Is Banning.

      September 9, 2026

      Subscribe to Updates

      Get the latest creative news from FooBar about art, design and business.

      HEICJPG.online - Convert HEIC to JPG online
      Facebook
      • About Us
      • Contact us
      • Privacy Policy
      • Disclaimer
      • Terms and Conditions
      • Editorial Policy
      • Cookie Policy
      © 2026 GeekBlog

      Type above and press Enter to search. Press Esc to cancel.