Pick the parts, get a config you can run

Circuit Builder

Pick the parts. Get a config you can run.

Choose a distribution and the circuits you want on a group of servers. You get a main.tf with each circuit pinned to its release, passwords kept out of it, and the firewall opened for what you picked. It's written in your browser, and nothing you type leaves it.

1 Distribution

2 Circuits

Two circuits that want the same port can't share a host, so picking one greys out the other and says why. 108 of the 127 official circuits are here, and the list at the end of this step names the 18 that aren't, with the reason for each.

Web and proxies
    Databases and caches
      Monitoring
        Containers and Kubernetes
          DNS
            Networking and VPN
              Security and compliance
                Storage and backup
                  Identity and secrets
                    AI
                      Platforms
                        Build and runtimes
                          Communication and media
                            Detection and response
                              Not in the builder yet (18)

                              Some circuits need more wiring than a form can do: a database of their own, a cluster to land on, or a whole machine. Others don't configure a Linux server at all. Each one below says which, and links to the page that shows how to set it up by hand.

                              • authentik: authentik needs a database wired to it and a public URL. Its README shows how to set them up.
                              • ciso-assistant: CISO Assistant needs a database wired to it and a public URL. Its README shows how to set them up.
                              • fleet: Fleet needs MySQL, Valkey and a setup step after the first apply. Its README shows how to set them up.
                              • flux: Flux installs onto a k3s cluster and syncs from your Git repository, so it needs both first. Its README shows how.
                              • helm: Helm's releases go onto a Kubernetes cluster, so it needs one first. Its README shows how.
                              • iis: IIS runs on Windows Server, and the builder only writes configs for Linux hosts so far. Its page shows how to set it up.
                              • istio: Istio installs onto a k3s cluster, so it needs that cluster first. Its README shows how.
                              • kubeadm: kubeadm has control planes and workers, two kinds of host. Its README shows how to set them up.
                              • lempa-homelab: Lempa homelab is a whole stack of 23 circuits behind one set of switches, so it takes the whole server. Its README shows how to set it up.
                              • mini-homelab: Mini homelab runs Homepage and Uptime Kuma on one server, the same two the builder offers on their own. Pick those for a group of hosts, or follow its README for the one-server version.
                              • microshift: MicroShift turns the whole box into an OpenShift node, with its router on 80 and 443. Give it a host of its own and follow its README.
                              • opnsense-vlans: OPNsense VLANs configures a firewall through its OpenTofu provider, not a server over SSH, so it doesn't fit a group of hosts. Its page shows how to set it up.
                              • proxmox: Proxmox turns a Debian host into a hypervisor. Give it a machine of its own and follow its README.
                              • proxmox-network: Proxmox VE network configures a Proxmox node through its API, not a server over SSH, so it doesn't fit a group of hosts. Its page shows how to set it up.
                              • rancher: Rancher needs a k3s cluster at a version it supports. Its README shows how to set one up.
                              • routeros-baseline: RouterOS baseline configures a MikroTik router through its OpenTofu provider, not a server over SSH, so it doesn't fit a group of hosts. Its page shows how to set it up.
                              • teleport: Teleport has a server and the nodes that join it, two kinds of host, and the server needs the address people reach it at. Its README shows how to set them up.
                              • velociraptor: velociraptor has a grade of F, and a circuit needs a passing grade to be here. See its grade.

                              Missing something, or found two circuits that clash? Tell us in Discussions.

                              3 Servers

                              Where are they?