linux vpsA Linux box you'd
A Linux box you'd
rent to yourself.
Modern kernels, gen5 NVMe, the option to bring your own image. Root from second zero, cloud-init out of the box, and no disabled sysctls we won't tell you about.
deploy.sh — first boot
➜ ~ curl -fsSL nodara.host/install | sh ▸ resolved: nv-4x @ fra1 · 4c · 16GB · 300GB nvme ▸ cloud-init: user-data verified (3.2 KB) ▸ image: ubuntu-24.04 · signed by nodara-releng ✓ ssh root@nv-8f2a10c3.fra1.nod.rocks ubuntu@nv-8f2a10c3:~$
supported images
Ten distros, one control plane.
Every image is cloud-init ready. Custom ISO upload is available on Scale tier and above.
Ubuntu 24.04 LTS
defaultnoble numbat
cloud-init, systemd 255
Ubuntu 22.04 LTS
jammy jellyfish
cloud-init, systemd 249
Debian 12
bookworm
minimal, cloud-init
Debian 11
bullseye
for legacy compat
Rocky Linux 9
blue onyx
RHEL-compatible
AlmaLinux 9
shamrock
RHEL-compatible
Fedora 41
workstation
podman preinstalled
Alpine 3.20
minimalist
apk, openrc, 42 MB base
NixOS 24.05
uakari
flake-ready, home-manager
Arch (rolling)
current
pacman, latest kernels
cloud-init
Ship user-data on day one.
Paste any cloud-init YAML in the deploy step or pipe it via our CLI. We validate before we boot, so bad YAML fails fast — no silently un-provisioned nodes.
- User-data up to 32 KB, base64-encoded
- Vendor-data injects sane sysctls & journald limits
- Meta-data via IMDSv2 · same shape as AWS
cloud-config.yaml
#cloud-config packages: - caddy - tailscale write_files: - path: /etc/caddy/Caddyfile content: | api.example.com { reverse_proxy localhost:8080 } runcmd: - systemctl enable --now caddy - tailscale up --authkey=${TS_KEY}