RespireCloud is not listed in any cloud marketplace yet. Applications for DigitalOcean, Akamai Cloud (Linode) and Vultr are coming soon. Until then the two ways below work on every provider.
One command
Create a fresh Ubuntu, Debian, AlmaLinux or Rocky Linux server with at least 1 GB of memory, connect as root and run:
curl -fsSL https://respirecloud.com/install.sh | sudo bash It asks a few questions. To ask nothing, give the answers as variables. Without a licence key the install starts the free 14 day trial and shows a link to approve the server in any browser.
export RC_ANSWER_ADMIN_EMAIL=you@example.com
export RC_ANSWER_HOSTNAME=panel.example.com
export RC_ANSWER_LICENCE_KEY= # optional
curl -fsSL https://respirecloud.com/install.sh | sudo -E bash -s -- --yes The host name needs a DNS record that points at the server. All options are in the install guide.
Cloud-init user data
Most providers have a "user data" or "cloud-init" box on the create-server screen. Paste this, change the email and host name, and the server installs itself on first boot. The key may stay empty.
#cloud-config
# RespireCloud on any provider with cloud-init (Hetzner, OVH, Contabo, AWS, Azure, GCP, Proxmox, SolusVM, Virtualizor ...).
# Paste this into the "user data" / "cloud-init" box when you create the server, on a fresh Ubuntu, Debian,
# AlmaLinux or Rocky Linux image. Change the three values marked CHANGE. The licence key may stay empty:
# the install then starts the free 14-day trial and shows a link to approve the server in a browser.
write_files:
- path: /etc/respirecloud/firstboot.env
permissions: "0600"
owner: root:root
content: |
RC_ANSWER_ADMIN_EMAIL=you@example.com # CHANGE
RC_ANSWER_HOSTNAME=panel.example.com # CHANGE
RC_ANSWER_LICENCE_KEY= # optional
runcmd:
- [bash, -c, "set -a; . /etc/respirecloud/firstboot.env; set +a; if [ -x /usr/lib/respirecloud/firstboot ]; then /usr/lib/respirecloud/firstboot; else curl -fsSL https://respirecloud.com/install.sh | bash -s -- --yes; fi"]
Providers
| Provider | How |
|---|---|
| DigitalOcean | Paste the user data into "Add Initialization scripts" or use the one command. A Marketplace application is planned and coming soon. |
| Akamai Cloud (Linode) | Use cloud-init metadata (Add user data) or the one command. A Marketplace application is planned and coming soon. |
| Vultr | Paste the user data into the "Cloud-Init User-Data" field, or use the one command. A Marketplace application is planned and coming soon. |
| Hetzner Cloud | Paste the user data into "Cloud config" when you create the server. |
| OVHcloud | Public Cloud accepts user data at creation; on a VPS use the one command. |
| AWS, Azure, Google Cloud | Use the instance's user data (AWS), custom data (Azure) or startup script with the one command (Google Cloud). Open ports 80 and 443 in the security group or firewall. |
| Proxmox and other cloud-init images | Add the user data as a cloud-init snippet to a cloud-ready template. |
Check each provider's own screen for the exact field name; they change.
For hosting providers
If you run SolusVM 2 or Virtualizor you can offer RespireCloud as an application your customers pick when they order. Nothing needs our approval.
SolusVM 2
Under Images, Applications, add an application: your Ubuntu 24.04 cloud image URL, your cloud-init version, login type URL, and this JSON schema for the order form. Use the cloud-init above as the template, with the three values filled from the form.
{
"type": "object",
"required": ["admin_email", "hostname"],
"properties": {
"admin_email": { "type": "string", "format": "email", "title": "Administrator email" },
"hostname": { "type": "string", "title": "Panel host name" },
"licence_key": { "type": "string", "title": "Licence key (empty for the free 14 day trial)" }
}
} Virtualizor
Add a cloud-ready OS template and attach this recipe, with the email and host name set per order.
#!/usr/bin/env bash
set -euo pipefail
: "${RC_ANSWER_ADMIN_EMAIL:?set the administrator email}"
export RC_ANSWER_ADMIN_EMAIL
export RC_ANSWER_HOSTNAME="${RC_ANSWER_HOSTNAME:-$(hostname -f)}"
curl -fsSL https://respirecloud.com/install.sh | bash -s -- --yes Image builders
If you build your own image, prepare it with curl -fsSL https://respirecloud.com/install.sh | sudo bash -s -- --image --yes
and check it with install.sh --image-check. The image keeps no licence, host name or administrator.
The first boot of each server finishes the install and starts the licence, with the key from
/etc/respirecloud/firstboot.env or, without one, the 14 day trial. A clone starts with the panel's own certificate until the owner points a domain at it. Building an image needs a licence once. The build's activation is released on the licence service when the image is sealed, so the same key can be used for the next build. Each clone needs its own key (or the web approval trial); a key given to the build is not shared with the clones. If the licence service cannot be reached at that moment the seal stops and can be run again. Never activate inside the image:
every clone would share one identity.