Docker学习笔记系列是学习记录的https://yeasy.gitbooks.io/docker_practice/content/ 该文档的笔记
ps:docker运行容器前需本地存在对应镜像,若不存在,则会在镜像仓库下载该镜像
获取镜像
- 从doker镜像仓库获取镜像的命令 docker pull
命令格式:
docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签]
- 镜像名称
- docker镜像仓库地址:地址的格式一般是 <域名/IP>[:端口号] 默认是docker hub
- 仓库名,两段式名称,即<用户名>/<软件名>,对于docker gub,默认是library(官方镜像)
- 镜像是由多层存储构成,下载也是一次层层下载,下载过程中给出每一层的ID的前12位,结束后,给出该镜像完整的sha256的摘要,确保下载一致性
运行
-it
: -i
交互式操作 -t
终端
--rm
: 容器退出后,随之将其删除,避免浪费空间
bash
:命令,交互式shell
- 获取到镜像,可以以镜像为基础启动并运行一个容器
docker run
是运行容器的命令docker image ls
列出已下载的镜像docker system df
查看镜像、容器、数据卷占用空间- 中间层镜像
-
- 为了加速镜像构建、重复利用资源
-
- 看到包括中间层镜像,命令
docker image ls -a
- 看到包括中间层镜像,命令
- docker有过滤器,可以特定格式显示
docker image ls -f 【过滤条件】
- 删除本地镜像
-
- 删除本地镜像命令格式:
docker image rm [选项] <镜像1> [<镜像2> ...]
- 删除本地镜像命令格式:
-
- 也用ID、镜像名、摘要删除:之上的<镜像>可替换为镜像ID、名、摘要
-
- 删除行为分为两类,一:Untagged ,二:Deleted
-
- Untagged是将要求的所有镜像标签取消掉,所有标签取消后,会触发删除行为,删除是从上层像基础层依次判断删除,直到没有任何层依赖的当前层时,才会才删除当前层
-
- 容器若对某镜像有依赖,若容器存在,则该镜像不能被删除
docker image rm $(docker image ls [条件])