VayuPress Docs

VayuPress Quick Setup

The fastest way to get VayuPress running on a fresh Ubuntu 24.04 server.

Prerequisites

Requirement Minimum Runs johal.in (234,727 posts, 14 sites)
OS Ubuntu 24.04 Ubuntu 24.04
RAM 8 GB a Contabo VPS 10
CPU 4 vCPU
Disk 50 GB NVMe
Access root / sudo

Point the domain's apex and www at the server first; the DNS records for mail, chat, MCP and the API are in the README.

1-Command Install

curl -sSL https://raw.githubusercontent.com/johalputt/vayupress/main/scripts/deploy-vayupress.sh | sudo DOMAIN=yourdomain.com EMAIL=you@yourdomain.com bash

To see what it would do without changing anything:

sudo DOMAIN=yourdomain.com ./scripts/deploy-vayupress.sh --dry-run

What Gets Installed

Component Purpose
Go (the version go.mod names, when the host's is older) Builds the binary
VayuPress The binary, linked at /usr/local/bin/vayupress, run by systemd as www-data
Nginx TLS and the reverse proxy
Certbot Let's Encrypt certificates, renewed by its timer
fail2ban Bans on nginx's auth and rate-limit errors
UFW Firewall: 22, 80, 443 and the mail ports
logrotate Log rotation
Tor, obfs4proxy Onion services, dormant until VayuTor is switched on

Search (VayuFind), the mail server, chat, analytics and the bot shield are part of the binary; nothing else is installed for them.

Configuration

Pass these as environment variables to the installer; it writes them, with generated secrets, to /etc/vayupress/env:

DOMAIN=yourdomain.com          # your domain
EMAIL=admin@yourdomain.com     # the Let's Encrypt account email
WORKER_COUNT=3                 # write-queue workers

Verify Installation

curl http://localhost:8080/health                 # liveness and version
curl http://localhost:8080/health/ready           # database and workers
curl http://localhost:8080/health/dependencies    # every part

The installer creates admin@yourdomain.com with a random password, saved to a root-only file and printed at the end; sign in at https://yourdomain.com/os and set your own.

Upgrade Existing Installation

Updates install from VayuOS → System › Update, verified against the release's signature. From the shell:

cd /opt/vayupress && git pull origin main
sudo ./scripts/deploy-vayupress.sh --upgrade

--upgrade keeps your secrets and data.

Next Steps

Support

support@vayupress.com