Docker学习笔记01 2025-12-07T00:57:41.592Z 2025-12-07T00:57:41.592Z 611 2 分钟 China
Docker常用命令
镜像获取
获取镜像
1 docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签]
运行容器
1 docker run -it --rm ubuntu:18.04 bash
-it:这是两个参数,一个是 -i:交互式操作,一个是 -t 终端。我们这里打算进入 bash 执行一些命令并查看返回结果,因此我们需要交互式终端。
--rm:这个参数是说容器退出后随之将其删除。默认情况下,为了排障需求,退出的容器并不会立即删除,除非手动 docker rm
。我们这里只是随便执行个命令,看看结果,不需要排障和保留结果,因此使用 --rm 可以避免浪费空间。
ubuntu:18.04:这是指用 ubuntu:18.04 镜像为基础来启动容器。
bash:放在镜像名后的是 命令 ,这里我们希望有个交互式 Shell,因此用的是 bash。
镜像罗列
列出镜像
1 2 3 4 5 6 7 8 9 $ docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE redis latest 5f515359c7f8 5 days ago 183 MB nginx latest 05a60462f8ba 5 days ago 181 MB mongo 3.2 fe9198c04d62 5 days ago 342 MB <none> <none> 00285df0df87 5 days ago 342 MB ubuntu 18.04 329ed837d508 3 days ago 63.3MB ubuntu bionic 329ed837d508 3 days ago 63.3MB
镜像体积
虚悬镜像
这个镜像原本是有镜像名和标签的,原来为 mongo:3.2,随着官方镜像维护,发布了新版本后,重新 docker pull mongo:3.2
时,mongo:3.2 这个镜像名被转移到了新下载的镜像身上,而旧的镜像上的这个名称则被取消,从而成为了 <none>
。除了 docker pull 可能导致这种情况,docker build
也同样可以导致这种现象。由于新旧镜像同名,旧镜像名称被取消,从而出现仓库名、标签均为 <none> 的镜像。这类无标签镜像也被称为
虚悬镜像(dangling image) ,可以用下面的命令专门显示这类镜像:
1 $ docker image ls -f dangling=trueREPOSITORY TAG IMAGE ID CREATED SIZE<none> <none> 00285df0df87 5 days ago 342 MB
一般来说,虚悬镜像已经失去了存在的价值,是可以随意删除的,可以用下面的命令删除。
中间层镜像
镜像删除
删除本地镜像
如果要删除本地的镜像,可以使用 docker image rm 命令,其格式为:
1 $ docker image rm [选项] <镜像1> [<镜像2> ...]