HACKER Q&A
📣 roschdal

How do I automate deployment and setup to Azure?


I am building a new Java application and would like to automate deployment and setup of the application in Azure.

The application runs on Spring Boot, Cassandra and MySQL database, Angular frontend. How should I build and deploy this application so it will run in Azure?


  👤 solarmist Accepted Answer ✓
I'm doing something very similar, but with Python and Vue and no Cassandra. I build and deploy with Github actions. The backend is deployed as an App Service, the frontend is a Static Web App and the DB is a hosted DB.

It took me a fair bit of time to get it working correctly with private repos, containerization and whatnot, but it's pretty straightforward now that I know what I'm doing.

It was mostly tracking down things like "okay how do get this code into the build docker image because I can't share the ssh keys with it" or "Okay, that built, but Oryx doesn't see anything. Oh damn it went to the wrong dir/filename/etc."


👤 ggeorgovassilis
The details depend on what the unit of deployment is: VMs? Containers? Something else?

Depending on the unit of deployment you can run VMs, a managed kubernetes cluster or the much cheaper Azure container apps combined with PaaS offerings like managed Databases, Firewalls, API gateways, monitoring etc.

You could start with Azure DevOps pipelines [1], but billing is opaque which doesn't help when tracking down costs.

Another approach could be Github actions for Azure [2].

If your setup isn't overly complicated, Azure apps [3] could work for you.

[1] https://azure.microsoft.com/en-us/products/devops/pipelines/

[2] https://learn.microsoft.com/en-us/azure/developer/github/git...

[3] https://learn.microsoft.com/en-us/azure/app-service/quicksta...


👤 coderintherye
There's no one answer to this. There's App Service as well as DevOps which can be useful or you can stand everything up individually.

Though given your stack if you want ease you may want to look into https://azure.microsoft.com/en-us/products/spring-apps/#over...