Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
English |
---|
This article is provided as a technical guide to set up Joget DX |
...
8 with PostgreSQL database on Kubernetes. |
...
The following steps were implemented on Ubuntu |
...
22.04, please modify the commands to suit your environment. |
Table of Contents
Code Block | ||||
---|---|---|---|---|
| ||||
# create custom Dockerfile cat <<EOF > joget-dx7dx8-postgresql-tomcat9.Dockerfile FROM jogetworkflow/joget-dx7dx8-tomcat9:78.01.141 # Copy postgresql jdbc driver (download from https://jdbc.postgresql.org/download/postgresql-42.27.193.jar) COPY postgresql-42.27.193.jar /deployments/apache-tomcat/lib/postgresql-42.27.193.jar EOF # build docker image docker build -f joget-dx7dx8-postgresql-tomcat9.Dockerfile --rm -t quay.io/replaceWithYourAccount/joget-dx7dx8-postgresql-tomcat9:78.01.141 . # push docker image docker push quay.io/replaceWithYourAccount/joget-dx7dx8-postgresql-tomcat9:78.01.141 |
Code Block | ||||
---|---|---|---|---|
| ||||
# deploy postgresql using Helm helm repoinstall addpostgres bitnami httpsoci://chartsregistry-1.bitnamidocker.com/bitnami helm install postgres bitnamiio/bitnamicharts/postgresql helm list helm get notes postgres # wait for postgresql to startup kubectl wait \ --for=condition=ready pod \ --selector=app.kubernetes.io/name=postgresql \ --timeout=180s |
...
Code Block | ||||
---|---|---|---|---|
| ||||
# check setfor postgresql password export POSTGRES_PASSWORD=$(kubectl get secret --namespace default postgres-postgresql -o jsonpath="{.data.postgresql-password}" | base64 --decode) # run psql kubectl run postgres-postgresql-client --rm --tty -i --restart='Never' --namespace default --image docker.io/bitnami/postgresql:1116.113.0-debian-1012-r24r4 --env="PGPASSWORD=$POSTGRES_PASSWORD" \ --command -- psql --host postgres-postgresql -U postgres -d postgres -p 5432 $ CREATE DATABASE jwdb; $ \quit |
...
Obtain the pgsql file from Configure for PostgreSQL.
Code Block | ||||
---|---|---|---|---|
| ||||
# import sql cat jwdb-postgresql-dx7postgres.pgsqlsql | kubectl exec -i postgres-postgresql-0 -- env PGPASSWORD=$POSTGRES_PASSWORD psql -U postgres -d jwdb |
...
Follow the instructions in https://dev.joget.org/community/display/DX7dx8/Joget+on+Kubernetes, replacing the jogetworkflow/joget-dx7dx8-tomcat9 image with the custom image quay.io/replaceWithYourAccount/joget-dx7dx8-postgresql-tomcat9 in the YAML
...
Code Block | ||||
---|---|---|---|---|
| ||||
# ssh into tomcat pod and create datasource files kubectl exec --stdin --tty deployments/joget-dx7dx8-tomcat9 -- /bin/bash $ cat <<EOF > /opt/joget/wflow/app_datasource-postgresql.properties workflowUser=postgres workflowPassword=REPLACE_POSTGRES_PASSWORD_HERE workflowDriver=org.postgresql.Driver workflowUrl=jdbc\:postgresql\://postgres-postgresql/jwdb EOF $ cat <<EOF > /opt/joget/wflow/app_datasource.properties currentProfile=postgresql EOF $ exit |
...
Code Block | ||||
---|---|---|---|---|
| ||||
# restart pods kubectl scale --replicas=0 deployment/joget-dx7dx8-tomcat9 kubectl scale --replicas=1 deployment/joget-dx7dx8-tomcat9 # view logs kubectl logs -f deployment/joget-dx7dx8-tomcat9 |