A client requires our software to run on Windows Server 2022 or newer. The application is written in Go and is currently packaged for Linux with Docker Compose or deployed to Kubernetes in the cloud. It has significant CPU, GPU, and I/O requirements, so I would prefer to avoid WSL2 and Docker Desktop because of their additional overhead and operational concerns in production.
I also would rather not add native Windows Service support to the application or depend on a wrapper such as NSSM. I'm considering using containerd directly so we can keep one container-based build pipeline. Is containerd a sensible production option on Windows Server? How much maintenance does it require, and what deployment approach has worked well for others?
3 Answers
If the application can be compiled and run reliably as a native Windows executable, that is worth comparing with containers. It avoids the Windows-container compatibility and maintenance issues, although you would then need a service manager or another supervised process model. For domain authentication inside containers, managed service accounts such as gMSA are commonly considered, but the exact approach depends on the application and authentication libraries; test this separately from the basic container runtime.
The main concern is less the containerd binary itself and more the surrounding Windows-container ecosystem. Documentation and installation scripts can be outdated, and features such as networking, identity integration, GPU access, and host patching may require manual operational work. Plan for a tested upgrade process, image/host version alignment, monitoring, and a rollback strategy. It may be a good fit if you have the expertise to own that platform, but it is not necessarily a drop-in replacement for a Linux Docker Compose deployment.
containerd can work on Windows Server 2022 and newer without Docker Desktop, including for some GPU workloads. You’ll still be operating Windows containers, so the image and host build must be compatible—for example, an LTSC 2022 base image with a matching host kernel helps avoid process-isolation problems. You’ll need to handle service registration, CNI networking, image management, logging, and upgrades yourself. nerdctl or Kubernetes can provide a friendlier workflow, but Docker Compose support is not the main strength of this setup. Verify GPU support carefully for your exact Windows image, driver, and runtime combination before committing.

Related Questions
Can't Load PhpMyadmin On After Server Update
Redirect www to non-www in Apache Conf
How To Check If Your SSL Cert Is SHA 1
Windows TrackPad Gestures