From a local copy of the repository, execute one of the following deployments.
Create a new cluster:
minikube start --cpus 8 --memory 24576 --disk-size 20gb --addons ingress,dashboard
Create a new namespace:
kubectl create ns trustify
Use it as default:
kubectl config set-context --current --namespace=trustify
Evaluate the application domain and namespace:
NAMESPACE=trustify
APP_DOMAIN=.$(minikube ip).nip.io
Install the infrastructure services:
helm upgrade --install --dependency-update -n $NAMESPACE infrastructure charts/trustify-infrastructure --values values-minikube.yaml --set-string keycloak.ingress.hostname=sso$APP_DOMAIN --set-string appDomain=$APP_DOMAIN
Then deploy the application:
helm upgrade --install -n $NAMESPACE trustify charts/trustify --values values-minikube.yaml --set-string appDomain=$APP_DOMAIN
Create a new cluster:
kind create cluster --config kind/config.yaml
kubectl apply -f https://kind.sigs.k8s.io/examples/ingress/deploy-ingress-nginx.yaml
The rest works like the minikube
approach. The APP_DOMAIN
is different though:
APP_DOMAIN=.$(kubectl get node kind-control-plane -o jsonpath='{.status.addresses[?(@.type == "InternalIP")].address}' | awk '// { print $1 }').nip.io
Create a new cluster:
crc start --cpus 8 --memory 32768 --disk-size 80
Create a new namespace:
oc new-project trustify
Evaluate the application domain and namespace:
NAMESPACE=trustify
APP_DOMAIN=-$NAMESPACE.$(oc -n openshift-ingress-operator get ingresscontrollers.operator.openshift.io default -o jsonpath='{.status.domain}')
Provide the trust anchor:
oc get secret -n openshift-ingress router-certs-default -o go-template='{{index .data "tls.crt"}}' | base64 -d > tls.crt
oc create configmap crc-trust-anchor --from-file=tls.crt -n trustify
rm tls.crt
Deploy the infrastructure:
helm upgrade --install --dependency-update -n $NAMESPACE infrastructure charts/trustify-infrastructure --values values-ocp-no-aws.yaml --set-string keycloak.ingress.hostname=sso$APP_DOMAIN --set-string appDomain=$APP_DOMAIN
Deploy the application:
helm upgrade --install -n $NAMESPACE trustify charts/trustify --values values-ocp-no-aws.yaml --set-string appDomain=$APP_DOMAIN --values values-crc.yaml
Instead of using Keycloak and the filesystem storage, it is also possible to use AWS Cognito and S3.
Deploy only the application:
helm upgrade --install -n $NAMESPACE trustify charts/trustify --values values-ocp-aws.yaml --set-string appDomain=$APP_DOMAIN
Instead of using a local checkout, you can also use a released chart.
Note
You will still need a "values" files, providing the necessary information. If you don't clone the repository, you'll need to create a value yourself.
For this, you will need to add the following repository:
helm repo add trustify https://trustification.io/trustify-helm-charts/
And then, modify any of the previous helm
commands to use:
helm […] --devel trustify/<chart> […]