Install

One line. One question.

Servio installs on any Linux server with Docker. The installer asks what you're setting up, then starts only the containers that setup needs.

The one-line install

Interactive: it asks for the preset, a name, the owner's email and the panel's address.

$ curl -fsSL https://servio.nulldaily.com/install.sh | sudo bash

Or answer everything up front, for scripts and provisioning:

$ curl -fsSL https://servio.nulldaily.com/install.sh | sudo bash -s -- \ --preset hosting --modules webstore,communities \ --name "Halcyon Hosting" --email [email protected] \ --url https://panel.example.com --yes
Free for personal use. No key needed for up to 3 nodes and 50 servers. To sell, add a commercial license later under Admin, then License. Your downloads and licenses live in your NullDaily account.

What it does

  1. Checks Docker

    Docker Engine and Compose v2. It tells you what's missing.

  2. Asks what you're setting up

    One of six presets, plus any optional modules.

  3. Writes its settings

    Fresh secrets in an .env only root can read.

  4. Starts what's needed

    Postgres and the panel, always. The node daemon only if the Panel module is in.

  5. Sets up the owner

    Prints the address and a generated password to sign in with.

Add --dry-run to see what it would do without touching Docker.

Presets

What are you setting up?

The same six choices appear in the installer and in the setup wizard in your browser. Add or remove modules later on the Modules page; your data is kept.

  • Just meYour own game servers on your own machines.
    Panel
  • Me and my friendsYour servers, shared with friends you invite.
    PanelFriends
  • Hosting companySell servers with plans, invoices and a public storefront.
    PanelHostingStorefront+ Webstore+ Communities
  • Community onlyForums for your players. No nodes, no servers.
    Communities+ Webstore
  • Webstore onlyAn in-game store for servers hosted anywhere.
    Webstore
  • CustomPick the modules yourself.
    Any

Dependencies are added for you: Friends and Hosting need Panel, Storefront needs Hosting. Webstore and Communities run on their own.

The setup wizard's modules step for a hosting company: Panel, Hosting and Storefront included, Webstore and Communities optional.
The setup wizard's module step, from the working panel.

Adding nodes

Every other machine: one more line.

In the panel, Nodes > Add node. Give it a name, the address players use, its game ports, memory and disk. The panel shows the command to run on the new machine.

  • The pairing code works once, for an hour. The node fetches its secret with it; the secret never sits on a command line.
  • The node installer offers to install Docker, runs as a system service, and can put Caddy in front with a Let's Encrypt certificate.
  • Prefer Compose? The node page shows a config.yml for a manual setup, on Linux or a Mac with Docker Desktop.

On the new node, as root:

$ curl -fsSL https://panel.example.com/api/remote/install.sh \ | sudo bash -s -- --panel https://panel.example.com \ --node nd_xxxxxxxxxx --pair <code>

Good to know

  • Game traffic goes straight to the node, not through the panel or a web proxy. Forward the game ports to the node.
  • SFTP listens on port 2022 on each node.
  • Apple silicon runs Minecraft Java natively. x86-only games such as Bedrock, Valheim, Palworld and Rust belong on an x86 Linux node.

Requirements

What you need.

The panel

A Linux server with Docker and Compose v2. The panel is two containers: Servio and Postgres. A domain if you want HTTPS for the panel and your public sites.

Each node

Any Linux machine with Docker, sized for the games it runs. The panel's own machine can be a node too.

Public sites

Point the Storefront, Webstore and Communities domains at the panel. Behind a proxy, tell Servio to trust its headers.

Run it your way.

Free for personal use, one payment to sell. Try the demo in your browser, or install Servio on your own machine in one line.