Deploying ToolJet on Kubernetes
You should setup a PostgreSQL database manually to be used by ToolJet.
Follow the steps below to deploy ToolJet on a Kubernetes cluster.
Setup a PostgreSQL database ToolJet uses a postgres database as the persistent storage for storing data related to users and apps. We do not have plans to support other databases such as MySQL.
Create a Kubernetes secret with name
server
. For the minimal setup, ToolJet requirespg_host
,pg_db
,pg_user
,pg_password
,secret_key_base
&lockbox_key
keys in the secret.Create a Kubernetes deployment
kubectl apply -f https://raw.githubusercontent.com/ToolJet/ToolJet/main/deploy/kubernetes/deployment.yaml
The file given above is just a template and might not suit production environments. You should download the file and configure parameters such as the replica count and environment variables according to your needs.
If there are self signed HTTPS endpoints that Tooljet needs to connect to, please make sure that NODE_EXTRA_CA_CERTS
environment variable is set to the absolute path containing the certificates. You can make use of kubernetes secrets to mount the certificate file onto the containers.
Verify if ToolJet is running
kubectl get pods
Create a Kubernetes services to publish the Kubernetes deployment that you've created. This step varies with cloud providers. We have a template for exposing the ToolJet server as a service using an AWS loadbalancer.
Examples:
If you want to serve ToolJet client from services such as Firebase or Netlify, please read the client Setup documentation here.
ToolJet Database
If you intend to use this feature, you'd have to set up and deploy PostgREST server which helps querying ToolJet Database. Please follow the instructions here for additional environment variables configuration to be done.
Setup PostgREST server
kubectl apply -f https://raw.githubusercontent.com/ToolJet/ToolJet/main/deploy/kubernetes/postgrest.yaml
Update ToolJet deployment with the appropriate env variables here and apply the changes.