{"id":23220450,"url":"https://github.com/m-reza-rahman/java-on-app-service","last_synced_at":"2025-10-13T10:35:06.268Z","repository":{"id":267378670,"uuid":"901052544","full_name":"m-reza-rahman/java-on-app-service","owner":"m-reza-rahman","description":"Demo of running Java applications on App Service using Spring Boot, Quarkus, Tomcat and Jakarta EE","archived":false,"fork":false,"pushed_at":"2025-06-07T20:31:27.000Z","size":497,"stargazers_count":3,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-07T21:26:35.982Z","etag":null,"topics":["azure","azure-app-service","jakartaee","java","jboss-eap","quarkus","spring-boot","spring-framework","tomcat"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/m-reza-rahman.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-12-10T00:34:00.000Z","updated_at":"2025-06-07T20:31:30.000Z","dependencies_parsed_at":"2024-12-10T02:25:24.993Z","dependency_job_id":"dc20f2af-f43d-4b0d-b82e-d31da805807d","html_url":"https://github.com/m-reza-rahman/java-on-app-service","commit_stats":null,"previous_names":["m-reza-rahman/java-on-app-service"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/m-reza-rahman/java-on-app-service","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m-reza-rahman%2Fjava-on-app-service","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m-reza-rahman%2Fjava-on-app-service/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m-reza-rahman%2Fjava-on-app-service/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m-reza-rahman%2Fjava-on-app-service/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/m-reza-rahman","download_url":"https://codeload.github.com/m-reza-rahman/java-on-app-service/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m-reza-rahman%2Fjava-on-app-service/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279014641,"owners_count":26085555,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-13T02:00:06.723Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["azure","azure-app-service","jakartaee","java","jboss-eap","quarkus","spring-boot","spring-framework","tomcat"],"created_at":"2024-12-18T22:12:10.516Z","updated_at":"2025-10-13T10:35:06.253Z","avatar_url":"https://github.com/m-reza-rahman.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Deploying Java Applications to Azure App Service\nThis demo shows how you can deploy Spring Boot, Spring Framework, Hibernate, Tomcat, \nJava EE, Jakarta EE, JBoss EAP, and Quarkus applications to App Service (App Service is the \npremier PaaS platform on Azure). It is the demo for \n[this](https://sessionize.com/s/reza-rahman/spring-quarkus-tomcat-jakarta-ee-hyperscale-paas-o/122890) \ntalk.\n\nWe use Azure PostgreSQL but you can use Azure SQL, Azure MySQL, or Oracle DB@Azure. \nReact is used as the JavaScript front-end.\n\n## Setup\n* Install JDK 17 (we used \n[Eclipse Temurin OpenJDK 17 LTS](https://adoptium.net/?variant=openjdk17)). \nMake sure JAVA_HOME is set.\n* Set up [Maven](https://maven.apache.org/download.cgi).\n* Download this repository somewhere in your file system (easiest way might be to \ndownload as a zip and extract).\n* If you wish to run locally before deploying to Azure, \ninstall [Docker](https://docs.docker.com/get-started/get-docker/).\n* You will need an Azure subscription. If you don't have one, you can get one for \nfree for one year [here](https://azure.microsoft.com/en-us/free).\n* Install the \n[Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest).\n\n## Start Managed PostgreSQL on Azure\n* Go to the [Azure portal](http://portal.azure.com).\n* Select 'Create a resource'. In the search box, enter and select \n'Azure Database for PostgreSQL Flexible Server'. Hit create.\n* Create a new resource group named todo-app-group-`\u003cyour suffix\u003e` \n(the suffix could be your first name such as \"reza\").\nSpecify the Server name to be todo-db-`\u003cyour suffix\u003e` (the suffix could be your \nfirst name such as \"reza\").\n* Choose PostgreSQL and Microsoft Entra authentication. Set the Microsoft Entra admin \nto your working Azure user. Specify the login name to be postgres. \nSpecify a suitable password.\n* Click Next to go to the Networking tab.\n* Enable access to Azure services.\n* Create the resource. It will take a moment for the database to deploy and be ready \nfor use.\n* In the portal home, go to 'All resources'. Find and click on \ntodo-db-`\u003cyour suffix\u003e`. Open the Settings -\u003e Server parameters panel. Set the \n'require_secure_transport' parameter to 'OFF', and then hit 'Save'.\n\n## Running the Applications\nEach of the parts of this repository can be run independently, which means you can go \ndirectly to the parts that interest you most. The following is just one logical \nsequence.\n\n* Deploying a Spring Boot application using Java SE on App Service. \nThe [spring-boot](/spring-boot) folder shows how this is done.\n* Deploying a Jakarta EE application using JBoss EAP on App Service. \nThe [jakartaee](/jakartaee) folder shows how this is done.\n* Deploying a Spring Framework application using Tomcat on App Service. \nThe [tomcat](/tomcat) folder shows how this is done.\n* Deploying a Quarkus application using Java SE on App Service. \nThe [quarkus](/quarkus) folder shows how this is done.\n\n## Clean up\nOnce you are done exploring the demo, you should delete the \ntodo-app-group-`\u003cyour suffix\u003e` resource group. You can do this by going to \nthe portal, going to resource groups, finding and clicking on \ntodo-app-group-`\u003cyour suffix\u003e` and hitting delete. This is especially \nimportant if you are not using a free subscription.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fm-reza-rahman%2Fjava-on-app-service","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fm-reza-rahman%2Fjava-on-app-service","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fm-reza-rahman%2Fjava-on-app-service/lists"}