Bring your own server, SQLite with Litestream, external databases & more
Potions can now set up a server you already have, and your app's database can be a single SQLite file or a PostgreSQL database hosted anywhere.
Bring your own server
Have a Hetzner dedicated box, a VPS at OVH, Vultr or UpCloud, or a machine of your own? Run one command on it as root, and Potions sets it up exactly like a server it creates: PostgreSQL or SQLite, Caddy with automatic SSL, a firewall and zero-downtime deploys. It needs a fresh install of Ubuntu 24.04 on x86_64. The connect script checks the server first and changes nothing if it isn't ready.
If you reinstall the server later, Set up again sets it up from scratch and keeps your apps in Potions.
Get started with the Bring Your Own Server docs.
SQLite and Litestream
An app can now keep its whole database in one SQLite file on its server, with no database server to run. Potions snapshots the file every day and can stream every change to a bucket you own with Litestream, so you can restore the database to any moment in the last seven days. A server that only runs SQLite apps can skip PostgreSQL entirely.
Read the blog post for the full story, or get started with the SQLite and Litestream docs.
External databases
Point an app at Supabase, Neon, DigitalOcean, RDS, or any PostgreSQL database you run elsewhere. Paste its connection URL when you add the app, and Potions checks the connection from your app's server first. If it fails, Potions tells you why, like a provider allowlist that's missing the server's IP. Apps on an external database can be clustered too.
See the External Databases docs for more.
Show improvements Hide improvements
- Servers can now be renamed: Potions updates the name at your provider and the hostname on the server
-
A per-app custom proxy replaces Caddy's default
reverse_proxyline, for upstreams like an HTTP/3 origin - App servers and load balancers now allow UDP 443, so browsers can reach your apps over HTTP/3
- DigitalOcean's Premium Intel sizes are now offered, including in the US regions that stopped listing Regular droplets
- Potions now checks each server's SSH host key and stops connecting if it changes
- Fixed: a deploy whose Caddy config was rejected reported success; it now fails with Caddy's error and the previous release keeps serving
Have a feature you'd like to see in Potions? Tell us →