如何保持 WIndows 容器 运行?

How to keep WIndows Container running?

我需要让我的 Windows 容器保持运行状态,这样我就可以 运行 使用 docker exec 对它执行进一步的命令。

在 Linux,我会 运行 sleep infinitytail -f /dev/null。或者,我可以 borrow pause.c from Kubernetes.

这在 Windows 上是什么样子的?

Kubernetes on Windows used to use ping

cmd /c ping -t localhost

这会print lots of unnecessary output,所以一个好的改进应该是

cmd /c ping -t localhost > NUL

Kubernetes 现在做的是 run a custom pauseloop.exe binary.

使用ping -t localhost即可

完整的 运行 命令是:

docker run -d --name YourContainer mcr.microsoft.com/windows/nanoserver:1809 ping -t localhost

注意: 确保 1809 与您自己的 windows 版本相同 [WIN]+[R] -> winver .

然后您应该能够进入名为 YourContainer:

的 运行ning 容器实例
docker exec -it YourContainer cmd