Nginx
Web server and proxy
Dev / ToolsFree
Web server with auto HTTPS
The script is free · VPS from $2.79 per month · installs in about 45 seconds
root@vps:~# sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl && curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg && curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list && sudo chmod o+r /usr/share/keyrings/caddy-stable-archive-keyring.gpg /etc/apt/sources.list.d/caddy-stable.list && sudo apt update && sudo apt install -y caddy
✓ Caddy 2.11.4 installed · about 45 seconds
root@vps:~#
Caddy is a web server and reverse proxy that obtains and renews HTTPS certificates on its own. Just put your domain in the config and the site works over HTTPS right away.
A Caddyfile is shorter and simpler than an Nginx config: proxying an app on port 3000 takes two lines. That's why Caddy is often placed in front of Vaultwarden, n8n, panels and webhook bots.
The command adds the official Caddy repository and installs it as a systemd service.
For Caddy: at least 1 vCPU, 2 GB RAM and 10 GB NVMe.
Three steps in the bot or one command over SSH; installation takes about 45 seconds.
Open @ExpressHost_bot and pay for a VPS. The server will be ready in about 60 seconds.
At the “Add-ons” step pick the script from the library, or run it later: Server settings → Scripts.
The bot will send the server address and login details to the chat.
Connect to the server as root and run the command. Supported systems: Ubuntu 22.04, Ubuntu 24.04, Debian 11, Debian 12.
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl && curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg && curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list && sudo chmod o+r /usr/share/keyrings/caddy-stable-archive-keyring.gpg /etc/apt/sources.list.d/caddy-stable.list && sudo apt update && sudo apt install -y caddy| Port | Protocol | Purpose |
|---|---|---|
| 80 | tcp | HTTP and domain validation |
| 443 | tcp/udp | HTTPS and HTTP/3 |
/etc/caddy/Caddyfile add: your-domain { reverse_proxy 127.0.0.1:3000 }systemctl reload caddy and the certificate will be issued automaticallyDidn’t find an answer? Message @ExpressHost_SupportBot.
Caddy is simpler and handles HTTPS itself. Nginx is more flexible and more familiar for complex configs. For proxying a couple of services, Caddy is more convenient.
apt update && apt upgrade: the Caddy repository is added during installation.
Config in /etc/caddy/Caddyfile, certificates in /var/lib/caddy/.local/share/caddy.
Caddy installs at checkout — in the bot.
Netherlands, Amsterdam
$2.89/mo
$0.10 for 24 hours · $0.72 for 7 days
Caddy is installed manually: the install command is further down this page.
Germany, Frankfurt
$3.14/mo
$0.11 for 24 hours · $0.79 for 7 days
Caddy is installed manually: the install command is further down this page.
Poland, Warsaw
$2.79/mo
$0.10 for 24 hours · $0.70 for 7 days
Caddy is installed manually: the install command is further down this page.
Estonia, Tallinn
$3.10/mo
$0.11 for 24 hours · $0.78 for 7 days
Caddy is installed manually: the install command is further down this page.