首页 > 其他分享 >保持docker环境干净

保持docker环境干净

时间:2024-06-22 09:02:16浏览次数:22  
标签:容器 删除 环境 命令 干净 镜像 docker Docker

悬挂镜像

首先,我们要学习如何删除悬挂的映像。所谓悬挂的 Docker 镜像是一种未使用的镜像,与任何标签(tag)的镜像或容器都没有关联。它通常发生在使用与现有镜像相同的标签构建新镜像时。Docker 不会删除旧镜像,而是保留它,但会删除标签引用,使镜像没有适当的标签。

悬挂镜像不会被任何容器或标签镜像引用,但它们会消耗磁盘空间,却不会带来任何好处。它们会随着时间的推移而累积,尤其是在频繁构建和更新镜像的环境中。因此,最好不时删除它们。

删除悬挂镜像的命令

docker image prune

执行该命令时,docker会向你确认是否要删除这些镜像,输入y就可以了,我们也可以使用以下命令直接删除

docker image prune -f

添加-f(--force)是为了防止 CLI 要求您确认是否真的要删除悬挂镜像

退出的容器

停止使用的容器也会浪费宝贵的资源。如果你确定不再需要这些容器,那么就应该删除它们。你可以使用以下命令逐个删除它们:

docker container rm <container-id|container-name>

您也可以使用此命令批量删除它们:

docker container prune - -force

在单独删除它们的命令中,<container-id|container-name> 表示我们可以使用容器 ID 或其名称来识别容器。而prune命令,则会直接删除所有退出的容器,同理添加-f选项,使得docker不会再出现询问的提示框

数据卷

未使用的 Docker 卷也会很快占满磁盘空间。在开发或持续集成(CI)环境中,尤其是在创建了大量临时卷的环境中,对卷进行删除是一种很好的做法。但我必须提醒你,Docker 卷是用来存储数据的。通常情况下,这些数据的生命周期必须长于容器的生命周期。在生产或类似生产的环境中尤其如此,因为这些环境中的数据往往是关键任务数据。因此,在使用以下命令修剪 Docker 主机上的卷时,一定要百分之百确定自己在做什么

docker volume prune

建议使用该命令时不带 -f(或 --force)标记。这是一个危险的终端操作,最好给自己一个重新考虑的机会。如果不带标记,CLI 会输出前面命令中的警告。您必须明确确认,键入 y 并按回车键

在生产系统或类似生产系统中,应避免使用前面的命令,而是使用此命令逐个删除不需要的卷:

docker volume rm <volume-name>

Docker网络

  对于不再使用的网络,也需要及时的清理,一般可以使用如下命令清理网络

docker network rm <network-name>

这会逐个的清理网络,同理,也可以使用以下命令批量处理不再使用的网路

docker network prune -f

如果我的文章对你有意义,请关注我的公众号,每天都有新的分享!

标签:容器,删除,环境,命令,干净,镜像,docker,Docker
From: https://blog.csdn.net/abc666_666/article/details/139754336

相关文章

  • ServBay 下一代Web开发环境
    ServBay是一个集成式、图形化的本地化Web开发环境。开发者通过ServBay几分钟就能部署一个本地化的开发环境。解决了Web开发者(比如PHP、Nodejs)、测试工程师、小型团队安装和维护开发测试环境的问题,同时可以快速的进行环境的升级以及维护。ServBay还将Web服务器,数据库,邮件服务器......
  • sprintboot开发环境的热部署(IDEA2024)
    文章目录1.增加pom.xml内容2.修改application.poperties的内容3.IDEA2024软件的其他配置测试是否热部署成功1.增加pom.xml内容供复制<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</ar......
  • C++系统相关操作2 - 获取系统环境变量
    1.关键词2.sysutil.h3.sysutil.cpp4.测试代码5.运行结果6.源码地址1.关键词C++系统调用环境变量getenv跨平台2.sysutil.h#pragmaonce#include<cstdint>#include<string>namespacecutl{/***@briefGetanenvironmentvariable.......
  • Centos7.9使用kubeadm部署K8S 1.27.6集群环境(内网通过代理部署)
    Centos7.9使用kubeadm部署K8S1.27.6集群环境(内网通过代理部署)在内网借助代理服务器,使用kubeadm部署一个k8s集群,单master+2worker节点,K8S版本为1.7.6,使用containerd作为容器运行时。1.环境信息操作系统:CentOS7.9.2009内存:8GBCPU:4网络:节点通过代理进行访问。host......
  • Centos7.9使用kubeadm部署K8S 1.27.6集群环境(内网通过代理部署)
    Centos7.9使用kubeadm部署K8S1.27.6集群环境(内网通过代理部署)在内网借助代理服务器,使用kubeadm部署一个k8s集群,单master+2worker节点,K8S版本为1.7.6,使用containerd作为容器运行时。1.环境信息操作系统:CentOS7.9.2009内存:8GBCPU:4网络:节点通过代理进行访问。ho......
  • docker入门
    前言Docker诞生于2013年,由SolomonHykes在DotCloud公司(后更名为Docker,Inc.)创立。Docker的核心理念是**“Build,Ship,andRunAnywhere”**,即构建、发布、运行应用程序不受环境限制。Docker通过容器化技术,将应用及其所有依赖打包到一个独立的、可移植的单元中,从而实现了......
  • arm环境,报错 no com_alibaba_nacos_shaded_io_grpc_netty_shaded_netty_transport_nat
    大概率版本号不对,sprintcloud版本+netty版本netty版本4.1.101.Final点击查看代码<dependency><groupId>io.netty</groupId><artifactId>netty-all</artifactId><version>4.1.101.Final</version></dependency><depend......
  • DockerHub镜像无法下载的多种解决方案
    hub.docker.com和国内几家DockerHub镜像服务平台陆续下架,停止服务。给使用的同学造成非常大的困扰。汇总了几种目前有效的解决方案,希望能帮助到大家。因为有些链接有时效性,可以关注文中链接的issue。(2024年6月中旬测试可用)Docker镜像加速站为了加速镜像拉取,使用以下命令设......
  • 详解pip换源步骤,打造极速Python开发环境
    在当今日益数字化的世界中,Python及其包管理工具pip已成为开发者们不可缺少的工具。Python的广泛应用,从数据分析到人工智能,从Web开发到科学计算,都离不开大量高质量的库和包的支持。但是,在安装和管理这些库和包时,网络速度和源的可靠性往往成为制约效率的瓶颈。为了解决这一问题,......
  • 迁移与备份、Dockerfile、docker 私有仓库
    【迁移与备份】1#1镜像从哪来的?21dockerpull拉的,远程仓库--》国内镜像站342通过容器打包成镜像5-centos镜像运行成容器---》装了vim6-把装了vim的容器---》打包成镜像7-以后拿到这个镜像--》再运行成容器,都会带......