docker 第一次连接后容器端口关闭

docker container port closes after first connection

如果我像这样启动一个 docker 容器

docker container run -it -p 9001:9001 alpine nc -p 9001 -l -k

然后我可以使用

从主机上的终端向这个 docker 化的 netcat 服务器发送一些纯文本
nc localhost 9001

但是,一旦我 ^C 主机终端中的 netcat,我就无法与 docker 容器建立新连接。重做命令告诉我连接成功,但是netcat马上就关闭了

$ nc localhost 9001 -v
Connection to localhost 9001 port [tcp/*] succeeded!

由于我运行我的容器处于交互模式,我可以看到容器内的netcat仍然是运行。

为什么我无法重新连接?或者至少,我能做些什么来解决这个问题?

如果我不使用 docker。

这是因为 Busybox 中包含的 netcat 版本。