Over the past couple of months I have had the opportunity to check out the Microsoft Azure JBoss EAP On App Service, and I wanted to share my thoughts on this service. If you have not previously heard of it, you can think of it as a cloud application service which enables one to deploy Jakarta EE applications in various formats, and host them on Azure. The Azure App Service contains a plethora of options, from allowing one to deploy a single JAR, to providing the ability to deploy containers, to the ability of deploying single WAR files.
To get started with the service, you can go to the Azure Portal and create a free account. There are a number of different services that are available for free to get started and take it for a spin. If you are interested in using the platform for development and production, you will need to subscribe to a paid plan. If you wish to get started on a learning path, then there are some great articles available to check out, but here I will show you what I did in order to deploy a simple Jakarta EE application to the cloud using this service. There are also some excellent examples on Github, including the Jakarta EE Azure example by Reza Rahman. Let's go quickly through some of my experiences while working through the Jakarta EE Azure example.
The database configuration when following through the Jakarta EE Azure example was very easy. I was able to create a hosted PostgreSQL database on Azure almost instantly. Following along with the example, I also configured the database security to enable access to the Azure services. Without the step-by-step of a tutorial, some of this configuration may have been a bit complex, as Azure offers a large variety of options for configuration of the services.
Next, I created a web application using JBoss EAP. This again provided many options, but many are fairly straight forward if you are familiar with Java web applications. I chose Java 11 as my runtime stack and JBoss EAP 7 as the web server. At this point, I was in a position to install an application in WAR file format to the JBoss EAP server.
Following along with the tutorial, one should install the Azure CLI to their machine in order to deploy a local application. However, I did not want to install anything locally to my machine. So instead of performing the local CLI installation, I used the cloud based CLI that is hosted on Azure. Using this cloud CLI, I was able to clone one of my personal Github repositories, modify it, build, and deploy it to JBoss EAP 7. This was very nice...having the ability to perform a complete build and deployment in the web browser.
A very nice feature is the ability to create resource groups that can be used to group application resources together. This feature allows one to group databases, web applications, and other services together in order to better manage all of the resources that are required for an application.
Overall, Azure JBoss EAP on App Service is a useful tool and is fairly easy to use. The downside is that the hosting can be quite costly if not using a free package, but I believe that may change at some point in the near future. Unfortunately, I was unable to dig much deeper because I left my services running for a couple of weeks and used up my credits. However, I am happy with my experience in the Microsoft Azure Portal with JBoss EAP 7, and I greatly appreciate the opportunity to look at the service. I look forward to the opportunity to continue my journey with these resources, hopefully free as a developer for testing purposes, in the future.