Inner Motivation or Value to Users
Problem
- The Microsoft deployment documentation is a nice start for advanced users, but tend to be quite generic/incomplete for newbies or users without deep knowledge of specific tech like ASP.NET Core Blazor, Azure, Linux, nginx, etc. We have confirmed this viewpoint dozens of times, because our users will use our Support Center for help with standard aspects of Microsoft ASP.NET deployment and different configurations. Many of these aspects are general-programming topics, totally unrelated to DevExpress products.
- When some of our users encounter an issue during deployment, they're not sure whether this is caused by DevExpress code or some external software, environment settings, and other things unrelated to our products. From our support experience over the years, the vast majority of deployment issues are caused by project or environment misconfigurations and were unrelated to DevExpress directly. Most often the problems tend to be for Linux, nginx, and Azure.
Our Solution
- We have created new step-by-step deployment instructions with screenshots, exact CLI commands, and so on, with some important notes and troubleshooting observations. These instructions cover the most popular configurations based on the surveys and Support Center tickets we have analyzed.
- We routinely (and rigorously!) test our development products in various deployment environments internally (Windows, Linux, Azure, etc.). We also have online demos like https://demos.devexpress.com/xaf/blazordemo/, which can be used as a reference or "proof" by customers (our demos and tests have always existed and they are not something new).
Step-by-Step Deployment Instructions and Troubleshooting Guidelines
We expect that these guidelines will reduce the number of deployment issues for our customers, whether they are using DevExpress products or not. I recommend that you mark these links as Favorites in your web browser.
- Deploy an ASP.NET Core Blazor Server Application to Azure App Service (Linux with SQL Azure)
- Deploy an ASP.NET Core Blazor Server Application to Linux with Nginx (Ubuntu, Red Hat, SUSE with PostreSQL)
- Deploy an ASP.NET Core Blazor Server Application to IIS (Windows with SQL Server)
- Deployment Troubleshooting Guide | ASP.NET Core Blazor Specific Problems (Linux, NuGet, Azure, etc.)
Bonus: Kubernetes and Load Testing Examples
You may find these additional community resources helpful for advanced deployment scenarios:
- Deploy and scale an XAF Blazor Server app: use Azure Kubernetes Service to serve hundreds of users (we updated our Docker image from .NET 6 to .NET 8 RTM and enabled the new DevExpress Drawing library)
- XAF Blazor load testing on Linux and MySql using Puppeteer and GitHub Actions
- Monitor XAF's Blazor App on Ubuntu (Video by Joche Ojeda)
- XAF Blazor load test with 100 clients (Video by Joche Ojeda)
- A nice intro to Docker by Oliver Sturm (Why use Docker, create Docker images, orchestrate the required services, etc.)
Your Feedback Matters
Because the number of apps deployed on non-Windows machines continues to increase, improving developer experience in this regard is a high priority for multiple development teams at DevExpress. This is not a trivial undertaking and your feedback on this matter is very important.
If cross-platform development is of importance to you, please take a moment to complete the survey below (about Docker and VS Code) and also help us shape the future of our VS Code Extension for Reporting (Create and Modify DevExpress Reports in Visual Studio Code (VS Code) on macOS and Linux (CTP)).
Thanks,
Dennis Garavsky
Principal Product Manager
dennis@devexpress.com