Chapter 11. Helm chart use case


Helm is an open source package manager that enables you to build, deploy, and maintain your JBoss EAP XP 6.0 applications on OpenShift.

You can use Helm chart with JBoss EAP XP 6.0 to:

  • Build your application from a Maven project hosted on a Git repository using OpenShift Source-to-Image (S2I).
  • Deploy an application image on OpenShift with deep integration using an OpenShift cluster (TLS configuration, public route to expose the application, and so on).
  • Build your application image with Helm chart and use the JBoss EAP XP operator to deploy the image.
  • Build an application image for JBoss EAP XP using other methods and use the Helm chart.
Important
  • You can build your Java application with JBoss EAP XP 6.0 to create a Bootable Jar or a Jakarta deployment (similar to JBoss EAP 8.1).
  • If your Java application is a Bootable Jar, the Helm Chart for JBoss EAP XP 6.0 can be used to build the application image (using its default build.mode set to bootable-jar).
  • If your Java application is a Jakarta deployment, you can build the application image using source-to-Image (similarly to JBoss EAP 8.1) by setting the Helm Chart’s build.mode to s2i

You can build your JBoss EAP XP application using Helm chart by configuring the build and deploy values. You must provide a URL to the Git repository that hosts your application code in your build configuration, the output is an ImageStreamTag resource that contains the built application image. To deploy your application, you must provide an ImageStreamTag resource that contains your built application image. The output is your deployed application and other related resources you can use to access your application from inside and outside OpenShift.

Prerequisites

  • You have access to the OpenShift Development Console.
  • You have the source code of your JBoss EAP XP application hosted in a Git repository.
  • Your application is a Maven project.
  • You have configured your application to use the org.jboss.eap.plugins:eap-maven-plugin to provision your JBoss EAP XP 6.0 server.
Note
  • This procedure focuses only on using the OpenShift Development Console.
  • Some form sections are collapsed by default. Click > to expand and view its content.Additionally, you do not need to updated these sections to proceed.

Procedure

  1. Log in to OpenShift Development Console.

    1. On the dropdown menu, click on Helm.
    2. On the the top right corner click create and then click on Helm Release.
    3. Select JBoss EAP XP 6.
    4. Click create and select configure via YAML view.
  2. Build your application image from the source repository:

    build:
      uri: <git repository URL of your application>
      mode: s2i
  3. Optional: Enter the secret in the build section with the sourceSecret key:

    build:
      uri: <git repository URL of your application>
      mode: s2i
      sourceSecret: <name of secret login to your Git repository>

Verification

  • If your application has been successfully deployed, you should see a deployed badge next to the Helm release on OpenShift Development Console.

You can build and deploy JBoss EAP 8.1 applications on OpenShift using the Helm Charts.

Prerequisites

  • Install Helm Charts. For installation instructions, refer to the OpenShift Guide.
  • Create an OpenShift instance and project using the OpenShift CLI. For guidance on project creation, consult the OpenShift Guide.
  • Helm CLI is installed on your machine.
  • Log into the OpenShift CLI using the command oc login.

Procedure

  • Login to an OpenShift instance using the OpenShift CLI.
  • Install Helm Chart for JBoss EAP 8.1.

    helm install eap81  --repo https://jbossas.github.io/eap-charts/ eap81
  • Run your application

    echo https://$(oc get route eap81 --template='{{ .spec.host }}')

Use the eap-maven-plugin from the application pom.xml to provision your JBoss EAP server. Ensure that this plugin is configured in the OpenShift profile, the default profile, or any other active profile, with the OpenShift profile taking precedence over all others.

Important

You must set build.mode to S2I. This is because the default value is bootable-jar for JBoss EAP XP Helm chart.

Note

The build.s2i.featurePacks, build.s2i.galleonLayers and build.s2i.channels fields have been deprecated.

OpenShift volumes enable containers to store and share data from various sources, including cloud storage, network file systems (NFS), or host machines. You can use Helm chart, an OpenShift package manager, to deploy applications in a consistent and reproducible manner. By adding a volume mount to a Helm chart, you can enable your application to persist data across deployments.

This procedure explains how to mount a secret as a volume using a Helm chart on JBoss EAP XP. Additionally, you can also use it to mount a ConfigMap. This action enables the application to securely access and use the data, protecting it from unauthorized access or tampering. For example, by mounting a secret as a volume, the sensitive data that you store in the secret appears as a file in the POD running the deployment where the secret has been mounted.

Prerequisites

  • You have access to the OpenShift Development Console
  • You have created a secret. For example, you have created a secret named eap-app-secret that refers to a file like keystore.jks.
  • You have identified a location where to mount the secret in the container’s file system. For example, the directory /etc/jgroups-encrypt-secre-secret-volume is where the secret file, such as keystore.jks is mounted.
  • The source code of your JBoss EAP XP application hosted in a Git repository.
  • Your application is a Maven project.
  • You have configured your application to use the org.jboss.eap.plugins:eap-maven-plugin to provision your JBoss EAP XP 6.0 server.

Procedure

  1. Log in to OpenShift Development Console.

    1. On the dropdown menu, click on Helm.
    2. On the the top right corner click create and then click on Helm Release.
    3. Select JBoss EAP XP 6.
    4. Click create and select configure via YAML view.
  2. Edit the YAML file specifying the volume in the deploy.volumes field and configure the secret to be used. You must provide the name of the volume and the secretName of the secret:

    volumes:
      - name: eap-jgroups-keystore-volume
        secret:
            secretName: eap-app-secret
  3. Mount the volume on the file system using the deploy.volumeMounts in the deployment configuration:

    volumeMounts:
      - name: eap-jgroups-keystore-volume
        mountPath: /etc/jgroups-encrypt-secret-volume
        readOnly: true

    When the pod starts, the container mounts the keystore.jks file at /etc/jgroups-encrypt-secret-volume/keystore.jks location.

Red Hat logoGithubredditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat Documentation

Legal Notice

Theme

© 2026 Red Hat
Back to top