ToolJet/docs/versioned_docs/version-1.x.x/setup/kubernetes.md
2024-04-29 17:12:28 +05:30

3 KiB

id title
kubernetes Kubernetes

Deploying ToolJet on Kubernetes

:::info You should setup a PostgreSQL database manually to be used by ToolJet. :::

If you have any questions feel free to join our Slack Community or send us an email at hello@tooljet.com.

Follow the steps below to deploy ToolJet on a Kubernetes cluster.

  1. 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.

  2. Create a Kubernetes secret with name server. For the minimal setup, ToolJet requires pg_host, pg_db, pg_user, pg_password, secret_key_base & lockbox_key keys in the secret.

    Read environment variables reference

  3. Create a Kubernetes deployment

     kubectl apply -f https://raw.githubusercontent.com/ToolJet/ToolJet/main/deploy/kubernetes/deployment.yaml
    

:::info 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. :::

:::info 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. :::

  1. Verify if ToolJet is running

     kubectl get pods
    
  2. 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:

:::tip If you want to serve ToolJet client from services such as Firebase or Netlify, please read the client Setup documentation here. :::

Upgrading to the Latest Version

The latest version includes architectural changes and, hence, comes with new migrations.

If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.

Prerequisites for Upgrading to the Latest Version:

  • It is crucial to perform a comprehensive backup of your database before starting the upgrade process to prevent data loss.

  • Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.

  • Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to the latest version.

For specific issues or questions, refer to our Slack.