13 Replatforming the legacy: Packaging and running Windows apps in Docker
The cloud is where most companies want to run most of their workloads. Startups can build everything from scratch in Go or Rust, package all their components in Linux Docker images, and run them in containers on any cloud. Established companies don’t have it so easy—larger and older organizations have larger and older apps, and they’re likely to include products that only run on Windows. These legacy apps are often core to the business, and they want to move them to the cloud for the same scale and cost benefits that everyone wants. But rewriting them in the latest tech stack is not an option—we’re talking about the sort of apps that were designed a decade ago and now have millions of lines of code. How about just packaging them in Windows Docker images to run in containers like modern apps? It’s an option that some people don’t care for because it feels like a Band-Aid disguising the real problems of a legacy codebase. But I don’t agree—this is replatforming legacy apps, so they can be built, deployed, and managed in the same way as modern apps. It gives you consistency in your tools and practices, and it means you can run all your apps on the same platform in the cloud.