Guide
IONOS or Hetzner in about 20 minutes
How to install Moorhold on a server in IONOS Cloud or Hetzner Cloud, point your domain at it, and run your first pipeline. You will not need a command line.
This guide describes how installing Moorhold yourself will work. These parts are not live yet:
- the installer that the cloud config below downloads;
- access keys, which open soon;
- the first-run steps in the portal (admin password, sign-in, sample data, first pipeline).
Until they are, we install Moorhold for you. The screens and labels below may change before release.
Before you start
You need:
- an IONOS Cloud or Hetzner Cloud account;
- a domain where you can add a DNS record, for example
data.yourorg.example; - your Moorhold access key;
- about 20 minutes. Most of it is waiting while the server installs itself.
The server needs 32 GB of memory for the full Moorhold stack, with dashboards and the data catalogue.
1. Create the server
Follow the steps for your provider. Both use the same cloud config.
On IONOS Cloud
- In the Data Center Designer, create a Virtual Data Centre in Frankfurt or Berlin.
- Add a server: a Memory Cube L (8 vCPU, 32 GB), or 8 cores and 32 GB.
- Give it a volume with the Ubuntu 24.04 image. IONOS asks for an SSH key or a password: create one and keep it safe. You will not need it.
- Paste the cloud config below into the volume's cloud-init user data field.
- Connect the server to a public LAN with internet access.
- Select Provision changes.
On Hetzner Cloud
- In the Hetzner Cloud Console, open your project and select Add server.
- Choose a location: Falkenstein, Nuremberg or Helsinki.
- Choose the image Ubuntu 24.04.
- Choose the type CX53 (32 GB). If it cannot be chosen in any location, choose the CCX33 or CPX62, which cost more (see Hetzner Cloud), or use IONOS instead.
- You can skip the SSH key.
- Under Cloud config, paste the cloud config below.
- Select Create & Buy now.
The cloud config
Replace every value in angle brackets: your access key, your Moorhold address and your own email address. The version and checksum come from the release notes.
#cloud-config
# Moorhold installer. Replace every value in angle brackets.
runcmd:
- [sh, -c, "curl -fsSL https://get.moorhold.dev/install-<version>.sh -o /tmp/moorhold-install.sh"]
- [sh, -c, "echo '<published sha256> /tmp/moorhold-install.sh' | sha256sum -c -"]
- [sh, -c, "MOORHOLD_ACCESS_KEY='<your access key>' MOORHOLD_HOSTNAME='<data.yourorg.example>' MOORHOLD_ADMIN_EMAIL='<you@yourorg.example>' sh /tmp/moorhold-install.sh --profile full"]
The installer generates every other password and key on your server. They never leave it.
2. Point your domain at it
- Copy the server's public IPv4 address from your provider's console.
- At your DNS provider, add an A record: the name
data(or the name you chose), and the server's address as the value.
3. Open Moorhold
- After about 15 minutes, go to
https://data.yourorg.example, or use Sign in on this site, which remembers your address. - Set your admin password. Use at least 16 characters.
- Connect your organisation's sign-in (Microsoft Entra ID, Google Workspace or Okta), or skip it for now.
- Choose Start with sample data, then Run pipeline. The sample data is invented.
- When it says "Your first pipeline worked", select Open the dashboard.
If it does not open
- Check that the DNS record is correct.
- Wait a few more minutes for the certificate.
- Check in the console that the server is running.
See Your Moorhold isn't running yet for more checks. If you are still stuck, email hello@moorhold.dev and say which step you reached. Please do not send passwords, keys or other secrets.
Security notes
- The access key can only download Moorhold's software. You can revoke it. It is used again only for upgrades.
- Every other secret is generated on your server and never leaves it.
- The installer is pinned to one version and checked against its published checksum before it runs.
Prices are on-demand, monthly and exclude VAT, as published on 5 October 2026 (IONOS Cloud prices, Hetzner Cloud). Providers change their prices; check before you buy.