首页 > 解决方案 > 启动时由 docker 绑定的端口,但不是正在运行的容器

问题描述

我正在运行 ubuntu 18。我有一个侦听端口 10010 的应用程序。但是似乎自从几次启动前,docker 就绑定到该端口。

dory@machine:~ $ sudo netstat -plnt | grep 10010
tcp        0      0 192.168.0.165:10010     0.0.0.0:*               LISTEN      1753/docker-contain 

运行 docker ps 什么也没给我:

dory@machine:~ $ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

杀死进程只会让它重新启动。重新启动机器也会再次触发。我怎样才能找到导致它启动的原因?我怎样才能禁用它?这是什么?

标签: dockerdocker-composedocker-machine

解决方案


如果您使用的是更新版本的 Docker(本机支持 Kubernetes 的版本,特别是 v18.03+),那么这就是 CRI 流服务器。较新版本的 containerd 现在包含默认启用的 CRI 插件。

正在做一些工作来添加禁用它的选项,或者默认禁用它,但现在要释放网络端口,您需要将 Docker 降级到 v18.03。您也可以在 containerd 配置文件 ( ) 中禁用 CRI 插件/var/run/docker/containerd/containerd.toml,但它是由 Docker 自动生成的,因此您的更改不会保留。

更多信息可以在moby#37507containerd#2483以及moby#37519的配置选项的合并 PR 中找到。


推荐阅读