Docker
镜像使用
查看本地镜像列表
使用 docker images
来列出本地主机上的镜像。
语法
docker images [OPTIONS] [REPOSITORY[:TAG]]
选项说明:
-
TERM:镜像名称
-
OPTIONS
:参数-a
:列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层);--digests
:显示镜像的摘要信息;-f
:显示满足条件的镜像;--format
:指定返回值的模板文件;--no-trunc
:显示完整的镜像信息;-q
:只显示镜像ID。
示例
tiger@tiger:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu 20.04 f643c72bc252 5 weeks ago 72.9MB
各个选项说明:
REPOSITORY
:表示镜像的仓库源TAG
:镜像的标签IMAGE ID
:镜像ID
CREATED
:镜像创建时间SIZE
:镜像大小
查询镜像命令
可以从【Docker Hub 网站】来搜索镜像。
也可以使用docker search
命令来搜索镜像。
语法
docker search [OPTIONS] TERM
选项说明:
-
TERM:镜像名称
-
OPTIONS
:参数--automated
:只列出automated build
类型的镜像;--no-trunc
:显示完整的镜像描述;-s
:列出收藏数不小于指定值的镜像。
示例
tiger@tiger:~$ docker search centos
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
centos The official build of CentOS. 6351 [OK]
ansible/centos7-ansible Ansible on Centos7 132 [OK]
各个选项说明:
NAME
: 镜像仓库源的名称DESCRIPTION
: 镜像的描述OFFICIAL
: 是否docker
官方发布stars
: 类似Github
里面的star
,表示点赞、喜欢的意思。AUTOMATED
: 自动构建
获取一个新的镜像
在本地主机上使用一个不存在的镜像时Docker
就会自动下载这个镜像。如果想预先下载这个镜像,可以使用docker pull
命令来下载它。
语法
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
选项说明:
-
NAME
:仓库名称 -
TAG|@DIGEST
:镜像的标签(版本号或摘要) -
OPTIONS
:参数-a
:拉取所有标记的镜像--disable-content-trust
:忽略镜像的校验,默认开启
示例
docker pull ubuntu:20.04
删除镜像
镜像删除使用 docker rmi
命令。
语法
docker rmi [OPTIONS] IMAGE [IMAGE...]
选项说明:
-
OPTIONS
:参数-f
:强制删除;--no-prune
:不移除该镜像的过程镜像,默认移除;
示例
docker rmi centos:7
创建镜像
当从docker
镜像仓库中下载的镜像不能满足需求时,可以通过以下两种方式对镜像进行更改。
- 1、从已经创建的容器中更新镜像,并且提交这个镜像
- 2、使用
Dockerfile
指令来创建一个新的镜像
更新镜像
更新镜像之前,我们需要使用镜像来创建一个容器。
tiger@tiger:~$ docker run -i -t ubuntu:20.04 /bin/bash
[root@c003bdbd74da /]# --此时已进入容器内部,-i -t 参数在容器操作时再讲
在运行的容器内使用
apt-get update
命令进行更新。
apt-get update
退出容器
[root@c003bdbd74da /]# exit
查看容器ID
tiger@tiger:~$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c003bdbd74da ubuntu:20.04 "/bin/bash" 6 minutes ago Exited (0) 13 seconds ago zen_mendel
通过命令
docker commit
来提交容器副本
tiger@tiger:~$ docker commit -m="更新" -a="tiger" c003bdbd74da tiger/ubuntu:v2
sha256:cb90ea7ce5cf2434adcdc1b12469e2abc351102f7b052838d5dbb4c1dafec63e
各个参数说明:
-m
: 提交的描述信息-a
: 指定镜像作者c003bdbd74da
:容器 IDrunoob/ubuntu:v2
: 指定要创建的目标镜像名
查看的
IMAGES
tiger@tiger:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
tiger/ubuntu v2 cb90ea7ce5cf About a minute ago 99.3MB
使用新镜像启动容器
tiger@tiger:~$ docker run -i -t tiger/ubuntu:v2 /bin/bash
构建镜像
使用命令docker build
, 从零开始来创建一个新的镜像。为此,我们需要创建一个 Dockerfile
文件,其中包含一组指令来告诉Docker
如何构建镜像。
此内容在使用Dockerfile
部分讲解
设置镜像标签
可以使用docker tag
命令,为镜像添加一个新的标签。
语法
docker tag [OPTIONS] IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]
示例
tiger@tiger:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
tiger/ubuntu v2 cb90ea7ce5cf 10 minutes ago 99.3MB
ubuntu 20.04 f643c72bc252 5 weeks ago 72.9MB
centos 7 8652b9f0cb4c 7 weeks ago 204MB
centos dev 8652b9f0cb4c 7 weeks ago 204MB