本文已参与「新人创作礼」活动,一起开启掘金创作之路。
在之前我们已经对容器进行了详细的介绍和操作,可以发现容器的启动和镜像离不开。因为容器是基于镜像的,好比我们安装软件是安装在操作系统上。接下来我们介绍对Docker镜像的基本使用!
列出本地镜像
docker images
输出选项说明:
- REPOSITORY: 表示镜像的仓库源
- TAG: 镜像的标签
- IMAGE ID: 镜像ID
- CREATED: 镜像创建时间
- SIZE: 镜像大小
查找镜像
docker search <镜像名>
参数说明:
- NAME: 镜像仓库源的名称
- DESCRIPTION: 镜像的描述
- stars: 类似 Github 里面的 star,表示点赞、喜欢的意思
- OFFICIAL: 是否 docker 官方发布
- AUTOMATED: 能否自动构建
拉取镜像
docker pull <镜像名> # 下载需要的镜像
删除镜像
docker rmi <镜像名> # 删除不需要的镜像
注意: 删除镜像前要确保没有基于该镜像创建的容器。
创建镜像
创建镜像有两种方式:
- 从已经创建的容器中更新镜像,并且提交这个镜像
- 使用 Dockerfile 指令来创建一个新的镜像
更新镜像
先使用需要更新的镜像创建一个容器并进入容器内部:
docker run -it <镜像名> /bin/bash
在容器内使用 apt-get update
命令进行更新
还可以根据自己需求进行你需要的配置(例如部署LAMP环境)
在所有操作结束后退出容器,然后查看刚操作的容器ID,接下来就提交容器为镜像:
docker commit -m="has update" -a="xiaochen" e218edb10161 xiaochen/ubuntu:v2
各个参数说明:
- -m: 提交的描述信息
- -a: 指定镜像作者
- e218edb10161: 要提交为镜像的容器 ID
- runoob/ubuntu:v2: 指定要创建的目标镜像名:标签
然后就可以使用 docker images
命令看到我们刚提交的镜像
后面我们就可以直接使用该镜像启动容器,而不需要每次启动一个新的容器再进行一遍之前的操作
设置镜像标签
docker tag <原镜像名>:[<TAG>] <新镜像名>:<TAG>
上图中的操作就是给ubuntu镜像打了v1的标签,并重命名为ubun。当我们需要更新多个版本的镜像时,给镜像打标签是一个很好的管理镜像方法。如果某一个镜像出现错误,就可以使用镜像标签回滚到上一个版本。
至此,镜像的基本使用就结束了,后面会详细讲解创建镜像及Dokcerfile,还有镜像仓库等内容!!!