Niels looks at how easy (or hard) it is to run containers on Windows servers.
A lot of customers I talk to are what we’d call “Windows shops.” They’ve built their business on Windows Server, Active Directory, and .NET apps, and many run that stack on VMware infrastructure. I’ve worked in and with environments like that for years. And the reality is, they’re not alone - around 80% of enterprise IT fits that description, according to industry analysts. With so many in the same boat, it got me wondering: how hard or easy is it, really, to run Windows containers? And how do they behave in Portainer?
I decided to try the path of least resistance. For me, that meant starting with Docker on Windows rather than going straight to Kubernetes. It’s simpler to set up, it aligns with what many Windows teams are familiar with, and it’s a good stepping stone toward more advanced orchestration later. Since my lab (built during my First 30 Days at Portainer series) already had the networking and infrastructure in place, it was the perfect environment to run this experiment.
Windows containers offer many of the same benefits as Linux containers like portability, isolation, and efficiency, but the starting point is different. Now is a great time for Windows users to start taking advantage of containers, but it isn’t always clear how to begin.
Here’s a quick overview of the Windows container landscape and a few things to know before you start:
That was my baseline understanding going in. The goal was to see how Windows containers actually perform in a nested virtualization lab, get one up and running, and manage it with Portainer.
If you’ve read my First 30 Days at Portainer blog series, you know I run my demos on a Proxmox‑based home lab. It’s a great way to model what a lot of enterprise customers are doing.
For this test, I spun up a fresh Windows Server 2025 VM on Proxmox.
I gave it:
Once Windows Server was up and running, I opened an elevated PowerShell prompt and ran:
Install-WindowsFeature -Name Containers
Restart-Computer
Install-WindowsFeature -Name Hyper-V -IncludeManagementTools
Restart-Computer
Hyper‑V installed cleanly after switching the VM processor type to “host” in Proxmox. Without that change, it fails the prerequisite check.
Microsoft now recommends using the Mirantis Container Runtime for Windows Server. It installs Docker plus the required container runtime bits:
Invoke-WebRequest -UseBasicParsing https://get.mirantis.com/install.ps1 -OutFile install.ps1.\install.ps1

After the install, I ran:
docker version
to confirm Docker was available and running.
.png)
Before running any test containers, I wanted to manage this Windows node directly in Portainer.Installing the Portainer agent was straightforward. In Portainer, Environment-related → Environments, you just click “+ Add Environment” → Docker Standalone → Start Wizard, and Portainer gives you the command to run in Windows:

docker run -d -p 9001:9001 --name portainer_agent --restart=always

Once the agent was installed, I went back to Portainer and proceeded to enter a Name, Host IP (or DNS name) and Port → Clicked “Connect” and the environment was added to Portainer.

Once connected, I could manage the node entirely from the Portainer UI, including deploying containers without touching the Windows CLI.
My first instinct was to grab a Windows Server 2025 container image (mcr.microsoft.com/windows/servercore:ltsc2025):

As you can see above that failed with:
(0xc0370106) The virtual machine or container exited unexpectedly.
I tried both Hyper‑V isolation and process isolation. Both failed. It turns out that this is a common issue right now, 2025 images are brand new and not “all” are fully supported in all nested virtualization scenarios.
Switching to Windows Server 2022 containers solved the problem immediately.
From Portainer’s UI, I could deploy (mcr.microsoft.com/windows/servercore:ltsc2022) without an issue. To test something useful, I used Portainer’s container creation workflow to deploy the official IIS image for Windows Server 2022. I mapped 8080 → 80 so I could browse to the Windows Node from my laptop on 8080 to access IIS in the container:


Once deployed I could browse to:
http://192.168.7.21:8080
and see the familiar IIS welcome page. All done without leaving Portainer.
.png)
Most Windows‑centric IT teams have never seen their IIS apps run in a container.This is a simple, repeatable way to get there whether you are running on VMware, Hyper‑V, bare metal, or any other virtualization platform:
This isn’t just a lab exercise. It’s a low‑risk, high‑value way to get hands‑on with containerization in an environment that’s familiar to you.
Once you see how easy it is to manage Windows containers from Portainer, it opens the door to modernizing more of your Windows workloads, without having to jump straight into Kubernetes or re‑architect everything on day one.
Infrastructure Moves Fast. Stay Ahead.

| # | Наименование новости | Тональность | Информативность | Дата публикации |
|---|---|---|---|---|
| 1 | Your Top Kubernetes Questions Answered by Portainer | 0 | 5 | 11-03-2026 |
| 2 | From Proof to Practice: Why Portainer Outshines Docker and Industrial IoT Giants | 5 | 7 | 08-01-2026 |
| 3 | Which Kubernetes distros does Portainer work with? | 5 | 7 | 17-03-2026 |
| 4 | Docker Swarm Still Works. But Does It Still Have a Future? | 0 | 5 | 12-03-2026 |
| 5 | 6 Best Container Management Software & Platforms (2026 Reviewed) | 5 | 7 | 06-03-2026 |
| 6 | The Edge Architecture Mistake That Looks Right Until You're Managing 50 Sites | 0 | 8 | 27-04-2026 |
| 7 | The enterprise vibe coding problem, and what we built to solve it | 2 | 6 | 16-06-2026 |
| 8 | Industrial Edge Computing: How It Works, Use Cases & Benefits | 0 | 7 | 07-04-2026 |
| 9 | Kubernetes Support: Services, Tiers & What Enterprises Need | 0 | 7 | 16-03-2026 |
| 10 | 7 Best Kubernetes Managed Service Providers for 2026 | 0 | 7 | 17-03-2026 |