Skip to content

System Requirements

To be able to easily securely and properly operate a Brezel instance, you need to provide a server that meets the following basic requirements.

Application setup, such as the web server, database, and other software is not covered here and not required for you to set up or provide. Any dependencies we need will be installed by us during the setup process.

Hardware Requirements

A simple Brezel instance requires the following minimum system specifications:

  • At least 6 x86 CPU cores
  • At least 16 GB of RAM
  • At least 100 GB of storage

Operating System

Any recent (preferably LTS) server Linux distribution should work.

We often operate “Ubuntu Server”, but “Debian Server” or others should work as well.

Server Access / Web & Internet requirements

  • SSH access to the server with sudo permissions
    • We need sudo permissions to install the necessary software packages, properly configure the server, and set up the Brezel instance correctly.
      • For example, since some components of Brezel are containerized, a container runtime like Docker is required. We will also install and configure this, which requires sudo permissions.
    • During the setup process we will create a new user and disable password-based SSH access in favor of certificates for security reasons. The initial access may be granted with a password.
  • The server needs to be able to talk to and access the open internet freely.
    • This is required to install required packages and to access external services like LetsEncrypt.
    • Especially additional Firewalls that strip standard HTTP headers like UPGRADE or inject their own certificate chain must not be in place.
  • A public (reachable), static IP address
    • This needs to be accessible from the internet without needing a VPN.

    • Port forwarding and unrestricted traffic on the following ports on that IP:

      • 22 (SSH)
      • 80 (HTTP) Just used to issued SSL Certificates
      • 443 (HTTPS)
  • DNS configuration for 3 different Domains (or subdomains) pointing to the server’s IP address
    • One to access the Brezel instance during normal use (e.g. brezel.example.com)
    • One for the API (e.g. api.brezel.example.com or brezel-api.example.com)
    • One for a websocket server (e.g. ws.brezel.example.com or brezel-ws.example.com)

We recommend using a virtual server from a provider like Hetzner Cloud, Ionos or netcup.