Helm Chart for WildFly

Add the Chart Repository for WildFly

The wildfly Helm chart can be installed from the chart repository at https://docs.wildfly.org/wildfly-charts:

helm repo add wildfly https://docs.wildfly.org/wildfly-charts/
helm search repo wildfly
Note
Compatibility with WildFly S2I images

The 2.x Helm Chart for WildFly relies on the new source-to-image (S2I) from WildFly that is available at quay.io/wildfly/wildfly-s2i-jdk11. It is not compatible with the legacy S2I image at quay.io/wildfly/wildfly-centos7.

You can continue to use the 1.x Helm Chart for WildFly with the legacy S2I images by specifying a version when you install with helm. For example, to use the latest 1.x release of the Helm Chart, you can use:

helm install my-legacy-app -f app.yaml wildfly/wildfly --version ^1.x

Update the Chart Repository for WildFly

To ensure that you are using the latest Helm Chart to build and deploy your application images, you need to update the wildfly chart by running the command:

helm repo update

Install a Helm Release

We can build and deploy the helloworld quickstart with this example file:

helm install helloworld \
    -f https://raw.githubusercontent.com/wildfly/quickstart/main/helloworld/charts/helm.yaml \
    wildfly/wildfly

When this command is executed, it will ouput information about the installed Helm release:

NAME: helloworld
LAST DEPLOYED: Wed Sep 20 12:29:06 2023
NAMESPACE: jmesnil1-dev
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
Your WildFly application is building! To follow the build, run:

$ oc get build -w

Note that your Deployment will report "ErrImagePull" and "ImagePullBackOff" until the build is complete. Once the build is complete, your image will be automatically rolled out.

To follow the deployment of your application, run:

$ oc get deployment helloworld -w

Documentation

wildfy Reference Guide

The README is a complete reference of all fields to configure the Helm releases installed by the wildfly chart.

Kubernetes Guide

The Kubernetes Guide explains how to build an application image and deploy it in a Kubernetes cluster.