Use a Server Template

Prepare a WordPress, Laravel, Node.js or Python server, an Nginx reverse proxy with Let’s Encrypt, or a CI runner host in one run.

Before you start: A connected server running a distribution the template’s steps support. For the reverse proxy template, domains that already point at the server, and ports 80 and 443 open.

  1. 1

    Open Templates and choose one

    Templates is under Automation. Each template lists its steps in order and its version, and the version history shows what changed.

  2. 2

    Set the options

    Choose a PHP, Node.js or Python version and any optional parts, such as a database server or Redis for Laravel. The Python Production Stack also asks for the Application name, the Application module and the Application interface: ASGI for FastAPI or Starlette, WSGI for Django or Flask. Optional steps run only when selected.

  3. 3

    For a reverse proxy, point the domains first

    Nginx Reverse Proxy + Auto-Renewing SSL requests a real Let’s Encrypt certificate, so every name in Domains must already resolve to the server. Enter where to Forward requests to, an Email for Let’s Encrypt, and accept the Subscriber Agreement. Use a staging certificate to test the setup without using up Let’s Encrypt’s limits.

  4. 4

    Choose servers, dry run, then run

    Every step’s playbook checks that it supports each server before anything changes. Steps run in order on each server, and a failed step skips the steps after it on that server.

  5. 5

    Finish the setup yourself

    A template prepares the server. For the Python Production Stack, deploy your code, install its requirements and enable the service, as the end of the run describes. For a CI runner host, register the runner with the command the run ends with and a token from GitHub or GitLab.