
Running Windows and Linux Containers at the same time on a single machine
A pretty niche requirement I had when working with a particular workload, but while researching it I seen the question pop up a couple of times on this sub so I thought I'd post it here for ref - hope it's on topic enough for the mods as I'm not sure where else it could fit :)
The problem:
Essentially we have a stack transitioning to Linux but parts of it remian on windows and it's tricky to get it all running locally, edit to add: the real constraints being having the workloads communicate with eachother across the same network, in a reproducible way. Virtualized infrastructure (sql, storage, servicebus) in Linux accessible from Windows, windows backend containers accessible from linux frontend containers, etc
I wanted to see how realistic it would be to automate this process including all the necessary configuration, from zero to running
The solution:
In the end the most 'reliable' solution was running Windows host with Docker Desktop in Windows Containers mode, and installing PodMan inside a WSL2 instance, after some firewall/nat trickery I got the services talking to eachother.
The automation:
I didn't think there was much value in simply demoing this without it being reproducible and documented, so I (with the aid of Claude) built a dotnet10 WPF app toolkit that can configure a machine in this way, as well as convert mixed-OS helm charts into docker/podman compose files that can be consumed by the underlying engines
The result:
Screenshot of cross-networked cross-platform containers exposed on localhost
A very particular set of tools I hope no one else is unlucky enough to need, but it's all up on github:
https://github.com/andrewiankidd/crosspose/
More background about this here if you're interested:
https://andrewkidd.co.uk/blog/2026/04/09/Crosspose/
Thanks!