4 ms·
The "new" Microsoft and .NET Core has solved much of the licensing issues and burden. Direct support for MySQL/Postgres and containerizing your app is only lik
by CyanLite2 8y ago
The "new" Microsoft and .NET Core has solved much of the licensing issues and burden. Direct support for MySQL/Postgres and containerizing your app is only like 3 lines in your Dockerfile.
- InclinedPlane 8y agoThe problem of Docker on windows isn't a matter of the size or complexity of Dockerfiles, it's everything else. You can easily have images on windows that are tens of gigabytes and take hours to build. I'm not talking about "crazy, psychopathic examples", I'm talking about running stuff that are examples that Microsoft itself publicizes on official websites. That sort of thing simply doesn't happen when you're dealing with linux, it's just a much better experience all around.
- wenc 8y agoTo be fair, building the average Windows Container image doesn't usually take hours -- that sounds like an unusual build. However, it is true that Windows Containers are very heavy compared to Linux Docker images, and for the most part they aren't production-grade (yet). The microsoft/windowsservercore image is currently ~10-12GB. The lighter-weight microsoft/nanoserver image is ~600MB, which sounds more reasonable, but there are certain limitations. Compare this to the Alpine Linux Docker image at ~5MB. It takes significantly longer to provision an Azure Container Instance (ACI) running a Windows Container than a Linux Container. That said, if you need to run Win64 or .NET Framework binaries (say from a proprietary vendor), Windows Containers are your only choice... else you have to spin-up a full blown VM. That said, .NET core running on Linux containers and connecting to open-source databases are a reasonable alternative. Devs tell me that .NET core itself is still pretty new so while it works for the most part, teething issues are to be expected.
- setquk 8y agoAgree entirely. However docker for Linux running .net core is a good option. Automating Windows is the biggest cost in these environments. It’s just not worth the hassle because even on the best of days with the best tools at hand it barely works.
- CyanLite2 8y agoNo one is (practically) using Docker on Windows. It’s all Linux and .Net Core is built from the ground up to be a first class framework for Linux.