Forum Discussion
Hosting Desktop Applications in Azure
Hi,
I have an Desktop Java Application. What are the solutions available in azure to make desktop applications available to users. Which needs to be accessed by multiple users.
Currently below is the solution that we are using
We have the package in Bastion servers. Bastion servers are accessed via P2S connection. We have SQL database hosted in VM and only app server can access it.
4 Replies
- BrianVeldmanCopper Contributor
You could use Azure Virtual Desktop or containerize the application (ACA, AKS) or host it on Azure App Services.
- NirmalKumarcCopper Contributor
BrianVeldman My app is a desktop application how can I containerize it.
- BrianVeldmanCopper Contributor
NirmalKumarc Is this application developed by your company or by a third party? If it's a third party, you should contact them to check the possibilities.
Below the potential options:
Option 1: Azure Virtual Desktop (AVD)
Best for traditional desktop apps that need GUI access.
- Host your Java desktop app on a Windows VM.
- Use Azure Virtual Desktop to stream the UI to users.
- Supports multi-session access, so multiple users can run the app simultaneously.
- Integrates with Azure AD for identity and access control.
Option 2: Azure RemoteApp (via AVD)
Ideal for publishing just the app—not the full desktop.
- Users launch the Java app remotely as if it’s installed locally.
- Reduces resource usage compared to full desktop sessions.
- Works well for apps with a GUI but limited system dependencies.
Option 3: Containerize the App
If your Java app doesn’t require a GUI or can be web-enabled.
- Package the app in a Docker container.
- Host it on Azure Kubernetes Service (AKS) or Azure Container Apps.
- Expose it via a web interface or REST API for multi-user access.
Option 4: Azure App Service (for Web-enabled Java)
If you can convert the desktop app to a web-based interface.
- Deploy using Tomcat, JBoss, or Spring Boot on Azure App Service.
- Users access the app via browser—no client installation needed.
- Simplifies updates and user access.
Option 5: Hybrid Model
Keep Bastion + VM but enhance with Azure services.
- Add Azure AD Application Proxy to securely publish the app.
- Use Azure Monitor and Log Analytics for diagnostics.
- Consider Azure Files or Blob Storage for shared data access.