Setu

Your binaries. Your servers. One control panel.

Install Setu

You need a fresh Ubuntu 22.04, 24.04 or 26.04, or Debian 12 or 13, server (x86_64 or aarch64), root access, ports 80 and 443 open, and a DNS name pointing at the server. The installer brings PostgreSQL and Caddy itself.

Run the installer

curl -fsSLO https://github.com/setucp/setu/releases/latest/download/install.sh && sudo bash install.sh --panel-host panel.example.com

The script verifies the release archive against SHA256SUMS, installs /opt/setu/setu, creates the setu user and database, configures Caddy for the panel host and starts setu.service.

No DNS name yet? Use --tls internal to have Caddy issue certificates from its own internal CA instead of ACME.

Then, in the browser

  1. The installer prints https://panel.example.com/setup and a one-time setup token. Open the URL and paste the token.
  2. The wizard creates the owner account. This works exactly once.
  3. The wizard registers this server: run the setu agent install line it shows, as root. The server shows online within seconds.
  4. Apps, Add: paste or link an app manifest.
  5. New site: choose the app and a domain. Setu provisions the site, and it goes live with HTTPS, its own database, limits and a nightly backup.

More

All installer flags, the manual install, upgrading and uninstalling are covered in the installation guide. Sample app manifests, including Miniflux and hello-axum, are in the manifests repository.