Skip to content

Azure-Samples/app-templates-springboot-app-on-ARO

 
 

Spring Boot PetClinic Application Deployed to Azure Red Hat Openshift (ARO)

Note

For Spring Boot applications, we recommend using Azure Spring Apps. See Java Workload Destination Guide for advice.

Description

In this sample app template, the PetClinic application (a Spring Boot based app) is containerized and deployed to an Azure RedHat Openshift (ARO) cluster secured by Azure Firewall

Deploy Spring Boot apps using Azure Red Hat Openshift (ARO) and Azure Services:

-- Tech stack:

  • Azure
  • Azure PostgreSQL DB
  • Azure Container Registry (ACR)
  • Azure Red Hat Openshift (ARO) Cluster
  • Azure Infra (Hub & Spoke Toppology)
  • Azure Infra (VNet Peering)
  • Azure User Defined Routing (UDR)
  • Azure Fire Wall
  • Azure Bastion
  • Github Actions
  • Bicep
  • Docker
  • Maven
  • Springboot

Introduction

This is a quickstart template. It deploys the following:

  • Deploying PetClinic App:

    • Progres SQL Database configuration
    • Provisioning Azure Infra Services with BICEP
    • Create the spring-petclinic- build with Maven
    • Create an Azure Container Registry
    • Push your app to the container registry
    • Create an Azure Redhat Openshift (ARO) Cluster
    • Deploy the image to your ARO cluster
    • Verify your container image
  • PetClinic on Automated CI/CD with GitHub Action

    • CI/CD on GitHub Action
    • CI/CD in action with the app

Refer to the App Templates repo Readme for more samples that are compatible with AzureAccelerators.

Prerequisites

  • Local shell with Azure CLI installed or Azure Cloud Shell
  • Azure Subscription, on which you are able to create resources and assign permissions
    • View your subscription using az account show
    • If you don't have an account, you can create one for free.

Getting Started

Fork the repository

  1. Fork the repository by clicking the 'Fork' button on the top right of the page. This creates a local copy of the repository for you to work in.

  2. Configure GITHUB Actions: Follow the insturctions in the GITHUB_ACTIONS_CONFIG.md file (Located in the .github folder.)

  3. Run the workflow

  • If workflows are enabled for this repository it should run automatically. To enable the workflow run automatically, Go to Actions and enable the workflow if needed.
  • Workflow can be manually run
    • Under your repository name, click Actions .
    • In the left sidebar, click the workflow "Build and Deploy Application".
    • Above the list of workflow runs, select Run workflow .
    • Use the Branch dropdown to select the workflow's main branch, Click Run workflow .

Pet Clinic Website

petclinic-screenshot

Congratulations! Now you have your containerized Java Sping Boot App deployed on AKS with supported JDK pushed to your ACR.

Pet Clinic Website - IP Address

  1. If you wish to view the PetClinic Deployment, follow the steps listed below:

a. Got to GitHub Actions and clink on your latest Deployment b. Scroll down to the section titled "Azure Powershell Cli - Get deployment IP Address" c. Open the Section....you will see a table, that list the EXTERNAL-IP. d. The EXTERNAL-IP will relfect the location of the Deployment.
e. You can utilze the EXTERNAL-IP to view the deployed image.

About

Containerized spring boot java app deployed on ARO

Topics

Resources

License

MIT, Apache-2.0 licenses found

Licenses found

MIT
LICENSE.md
Apache-2.0
LICENSE.txt

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CSS 62.2%
  • Java 25.4%
  • HTML 5.2%
  • Bicep 4.7%
  • SCSS 2.4%
  • Dockerfile 0.1%