Self-hosting
Run Patchworks inside your own Kubernetes environment with an installer-led deployment that configures the platform, generates the required Helm values and deploys the supporting infrastructure for you.
Self-hosting at a glance
Deployment model
Kubernetes + Helm
Setup experience
Guided Patchworks self-hosting installer
Ingress
Use your cluster ingress, or install Contour during setup
Core infrastructure
Database, Elasticsearch , RabbitMQ and S3
Application deployment
Patchworks application components, workers, migrations and seed data
Configuration output
Generated Helm values file
DNS
Point your chosen hostname at the ingress address if external DNS is not already configured
Demo deployment time
Approximately 10 - 15 minutes in the DigitalOcean walkthrough, including ingress installation
Before you start
Have the following available before running the installer:
A Kubernetes cluster
A working kubeconfig/context for the target cluster
A hostname you want to use for Patchworks
DNS access if your cluster does not manage DNS automatically
Patchworks image pull credentials
A valid Patchworks self-hosting licence
The email address for the initial administrator
What the installer does
The self-hosting installer removes most of the manual Kubernetes setup from the deployment process. Once connected to the correct cluster context, it guides you through the information Patchworks needs and then performs the Helm deployment.
During setup you can configure:
The Kubernetes namespace for Patchworks
The hostname used to access the platform over HTTPS
Dashboard and path routing
Deployment mode and worker count
Image pull credentials
Ingress configuration
Cookie/session domain
Your Patchworks self-hosting licence
The initial company and administrator account
The installer then generates the Helm values used for the deployment.
How the deployment works
1. Connect to your Kubernetes cluster
Create or select the target Kubernetes cluster, download its configuration and make that context available locally. The installer inspects the active cluster before continuing.
If an ingress controller is not already present, the walkthrough shows Contour being installed directly through the self-hosting installer.
2. Configure Patchworks
Run through the guided installer and provide the deployment settings for your environment, including hostname, routing, deployment mode, worker count, image pull credentials, licence and the initial administrator account.
Once configuration is complete, the installer generates the values file that will be used by the Patchworks Helm charts.
3. Install the infrastructure
The first deployment phase installs the supporting components required by Patchworks, including:
Database
Elasticsearch
RabbitMQ
The installer waits for the infrastructure to become ready before progressing to the application deployment.
4. Deploy Patchworks
The second phase deploys the Patchworks application components and completes the required database migrations and seeders.
The walkthrough completes the full process in around five minutes, including the initial ingress controller installation. Actual deployment time will depend on the cluster and environment.
5. Configure DNS and verify the deployment
When installation is complete, check the ingress address. If external DNS is not already configured in the cluster, create the required DNS record for the hostname selected during setup.
Navigate to the generated Patchworks URL and sign in using the initial administrator credentials. If the password was left blank during setup, the installer generates one automatically.
What happens behind the scenes
The installation is deliberately split into two stages:
Infrastructure The installer prepares the services Patchworks depends on - including the database, Elasticsearch and RabbitMQ - and waits for them to become ready.
Application Patchworks application components are deployed through Helm, followed by database migrations and seeders required to initialise the environment.
This staged approach makes the progress of the deployment easy to follow and gives operators a clear view of which part of the installation is currently running.
Last updated
Was this helpful?