Docker:镜像常用命令

àì夳堔傛蜴生んèń 2024-03-23 13:50 235阅读 0赞

pull命令

  • 下载镜像的命令。镜像从远程镜像仓库服务的仓库中下载。默认情况下,镜像会从 Docker Hub 的仓库中拉取。
  • 通过下载过程,可以看到,一个镜像一般是由多个层组成,类似 f7e2b70d04ae 这样的串表示层的唯一 ID。

    https://hub.docker.com/_/tomcat

    docker pull tomcat:9.0.20-jre8

    slim是对其压缩的镜像,所以大小比较小

    docker pull tomcat:9.0.20-jre8-slim

    alpline是因为基础镜像是alpine镜像制作的tomcat镜像

    docker pull tomcat:9.0.20-jre8-alpine

常用参数

  • -a, —all-tags=true|false : 是否获取仓库中所有镜像,默认为否;
  • –disable-content-trust : 跳过镜像内容的校验,默认为 true;

images命令

通过使用如下两个命令,列出本机已有的镜像

  1. docker images
  2. docker image ls

各个选项说明:

  • REPOSITORY:表示镜像的仓库源
  • TAG:镜像的标签
  • IMAGE ID:镜像ID
  • CREATED:镜像创建时间
  • SIZE:镜像大小

save命令

将docker中的镜像保存为文件
一个镜像

  1. mkdir -p /data
  2. cd /data
  3. docker save tomcat:9.0.20-jre8-alpine -o tomcat9.tar
  4. docker save tomcat:9.0.20-jre8-slim > tomcat9.slim.tar

常用参数

  • -o :输出到的文件
    多个镜像
    推荐开发岗的小伙伴使用idea开发工具中的列编辑模式制作docker save命令

    mkdir -p /data
    cd /data

    docker save \
    ubuntu:20.04 \
    alpine:3.12.1 \
    debian:10.6-slim \
    centos:7.8.2003 \
    -o linux.tar

    docker save \
    tomcat:9.0.20-jre8-alpine \
    tomcat:9.0.20-jre8-slim \
    tomcat:9.0.20-jre8 \
    -o tomcat9.0.20.tar

load命令

将保存为文件的镜像重新加载到docker中

  1. mkdir -p /data
  2. cd /data
  3. docker load -i linux.tar
  4. docker load < tomcat9.0.20.tar

常用参数

  • –input , -i : 指定导入的文件。
  • –quiet , -q : 精简输出信息。

search命令

不推荐使用search命令查找镜像,不够直观。

  1. docker search tomcat

常用参数

  • -f, —filter filter : 过滤输出的内容;
  • –limit int :指定搜索内容展示个数;
  • –no-index : 不截断输出内容;
  • –no-trunc :不截断输出内容;

inspect命令

  • 通过 docker inspect 命令,我们可以获取镜像的详细信息,其中,包括创建者,各层的数字摘要等
  • docker inspect返回的是 JSON格式的信息,如果您想获取其中指定的一项内容,可以通过 -f 来指定,如获取镜像大小

    docker inspect tomcat:9.0.20-jre8-alpine

    因为信息太多,用-f获取自己想要的信息

    docker inspect -f {

    1. {
    2. ".Size"}} tomcat:9.0.20-jre8-alpine

history命令

  • 从前面的命令中,我们了解到,一个镜像是由多个层组成的,那么,我们要如何知道各个层的具体内容呢?
  • 通过 docker history命令,可以列出各个层的创建信息,例如:查看 tomcat:9.0.20-jre8-alpine的各层信息

    docker history tomcat:9.0.20-jre8-alpine

tag命令

修改镜像的名称和版本

  1. # 修改镜像的名称和版本
  2. docker tag tomcat:9.0.20-jre8-alpine lagou/tomcat:9

rmi命令

通过如下两个都可以删除镜像

  1. # 注意:可能无法删除该镜像,因为有容器正在引用他
  2. docker rmi tomcat:9.0.20-jre8-alpine
  3. docker image rm tomcat:9.0.20-jre8-alpine

常用参数

  • -f, -force : 强制删除镜像,即便有容器引用该镜像;
  • -no-prune : 不要删除未带标签的父镜像;
    通过ID删除镜像
    除了通过标签名称来删除镜像,我们还可以通过制定镜像 ID, 来删除镜像。一旦制定了通过 ID 来删除镜像,它会先尝试删除所有指向该镜像的标签,然后在删除镜像本身。

    注意:可能存在相同的id

    docker rmi ee7cbd482336

删除镜像,正确的做法应该是:

  • 先删除引用这个镜像的容器;
  • 再删除这个镜像;

清理镜像

我们在使用 Docker 一段时间后,系统一般都会残存一些临时的、没有被使用的镜像文件,可以通过以下命令进行清理。执行完命令后,还是告诉我们释放了多少存储空间!

  1. docker image prune

常用参数

  • -a, —all : 删除所有没有用的镜像,而不仅仅是临时文件;
  • -f, —force :强制删除镜像文件,无需弹出提示确认;

发表评论

表情:
评论列表 (有 0 条评论,235人围观)

还没有评论,来说两句吧...

相关阅读