Docker 是一个开源容器化平台,可让我们快速构建、测试和部署应用程序作为可在任何地方运行的便携式容器。
在本快速教程中,我们将展示如何删除 Docker 中所有未使用的网络。
此外,如何通过 ID 或者使用过滤器标志删除一个或者多个网络。
删除 Docker 网络
1. 删除一个或者多个网络
要删除一个或者多个 Docker 网络,请使用 docker network ls
命令来查找要删除的网络的 ID。
$docker network ls NETWORK ID NAME DRIVER SCOPE 107b8ac977e3 bridge bridge local ab998267377d host host local h520032c3d31 jenkins-overlay bridge local 3bc81b63f740 none null local
找到要删除的网络后,使用 docker network rm
命令后跟 NETWORK ID。
例如,要删除名为 jenkins-overlay 的网络,请运行:
$docker network rm h520032c3d31
如果我们收到类似于下图所示的错误,则表示现有容器使用网络。
要删除网络,我们必须先删除容器。
Error response from daemon: network jenkins-overlay id 4g5293268bb91ad2498b38b0bca970083af87237784017be24ea208d2233c5aa has active endpoints
2.删除所有未使用的网络
使用 docker network prune
命令删除所有未使用的网络。
$docker network prune
系统会提示我们继续,使用 -f
或者 --force
标志绕过提示。
WARNING! This will remove all networks not used by at least one container. Are you sure you want to continue? [y/N]
3. 使用过滤器移除网络
使用 docker network prune 命令,我们可以使用过滤标志 -filter
根据条件删除网络。
但是,当前支持的过滤器是 until
和 label
。
我们可以通过使用多个 --filter
标志来使用多个过滤器。
例如,要删除超过 12 小时前创建的所有网络,请运行:
$docker network prune -a --filter "until=12h"
日期:2020-06-02 22:18:45 来源:oir作者:oir