DEV Community

Yuri Burger
Yuri Burger

Posted on • Originally published at yuriburger.net on

Running Java on Azure

Azure is Microsofts cloud platform. It is the home of Service Apps, Logic Apps, cloud storage, Kubernetes Service and provides the foundation for VSTS (now Azure DevOps), Office 365 and loads of other services and tools.

But not only for .NET based services and applications. Todays Microsoft provides options for Linux developers, OSX teams, Docker containers, Python code, Node.js and many more different workloads. In this article series I will explore some of the Azure services and options for Java based solutions.

Running Java applications

The best part about Azure (or any other cloud platform) is the capability for running your workloads. For many different reasons the cloud has pushed companies away from running their own datacenters and in to the cloud. So what are your options for running Java applications on Microsoft Azure?

Azure Web Apps

Officially known by its full name Azure App Service Web Apps is a service for hosting web applications, REST APIs, and mobile back ends. You can develop in your favorite language, be it .NET, .NET Core, Java, Ruby, Node.js, PHP, or Python. This platform comes in two flavours: Windows based and Linux based. You use App Service on Linux to host web apps natively on Linux for Java (currently 8.0), Spring based and Apache Tomcat applications.

There is a lot of information on this and Microsoft even created different walkthroughs for both Eclipse and IntelliJ!

Docker with Web Apps for containers

If your application runtime dependencies are not supported on the default App Service for Linux, you can also deploy/ create one using your custom built Docker image. You can pull your container images from Docker Hub or a private Azure Container Registry and Web App for Containers will deploy the containerized app with your preferred dependencies to production in seconds. The platform automatically takes care of OS patching, capacity provisioning, and load balancing. More information, try this Quickstart for Java

Azure Container Instances

Azure Container Instances offer a fast and simple way of running single containers in Azure. No virtual machine hassle, no OS to manage and no orchestration. This service is best suited for small applications. You can deploy your container using bash (CLI), the Azure portal or using PowerShell. More information, try this tutorial on creating a container for deployment.

Azure Kubernetes Service

Full blown managed hosted Kubernetes. As a hosted Kubernetes service, Azure handles critical tasks like health monitoring and maintenance for you. The Kubernetes masters are managed by Azure. You only manage and maintain the agent nodes. This option is suited for all types of applications: single node, multi node, clustered, mission critical, micro service based, auto scaling, etc. More info on the product page

Azure Market Place

A quick search on the Java based products available through the Azure Market Place reveals a lot of options for running Java on Azure:

Azure Databricks using Data Factory

Ok, this is something completely different. Azure Data Factory is Microsofts cloud solution for orchestrating data pipelines. Consider it your data ETL as a service :) Azure Databricks is Microsofts Apache Spark–based analytics service. azure-databricks-overview So, lets say you have Java code compiled as a .jar for certain tasks in your data pipeline (e.g. data classification), you can deploy this using Azure Data Factory on Azure Databricks. If you are into large-scale data processing, this is a great addition to your toolset. More info: https://docs.microsoft.com/en-us/azure/azure-databricks/what-is-azure-databricks

But wait, there’s more!

Microsoft has a lot of options for running Java based workloads on Azure, but this is certainly not the entire story. In two follow up posts I will be reviewing options for developing and operating Java solutions on Azure.

/Y.

Quickstart image

Django MongoDB Backend Quickstart! A Step-by-Step Tutorial

Get up and running with the new Django MongoDB Backend Python library! This tutorial covers creating a Django application, connecting it to MongoDB Atlas, performing CRUD operations, and configuring the Django admin for MongoDB.

Watch full video →

Top comments (0)

Jetbrains image

Is Your CI/CD Server a Prime Target for Attack?

57% of organizations have suffered from a security incident related to DevOps toolchain exposures. It makes sense—CI/CD servers have access to source code, a highly valuable asset. Is yours secure? Check out nine practical tips to protect your CI/CD.

Learn more

AWS GenAI LIVE! | May 14, 2025

GenAI LIVE! is a dynamic live-streamed show exploring how AWS and our partners are helping organizations unlock real value with generative AI.

Tune in to the full event

DEV is partnering to bring live events to the community. Join us or dismiss this billboard if you're not interested. ❤️