一、管理镜像
1、列出镜像列表
我们可以使用 docker images 来列出本地主机上的镜像。
docker images

各个选项说明:
- REPOSITORY:表示镜像的仓库源
- TAG:镜像的标签
- IMAGE ID:镜像ID
- CREATED:镜像创建时间
- SIZE:镜像大小
2、获取镜像
获取新镜像使用 docker pull 命令下载docker pull nginx
3、查找镜像
可以从 Docker Hub 网站来搜索镜像,Docker Hub 网址为: https://hub.docker.com/
也可以使用 docker search 命令来搜索镜像docker search nginx

4、删除镜像
镜像删除使用 docker rmi 命令
docker rmi d4edc1db7d5d
二、创建镜像
当我们从 docker 镜像仓库中下载的镜像不能满足我们的需求时,我们可以通过以下两种方式对镜像进行更改。
- 1、从已经创建的容器中更新镜像,并且提交这个镜像
-
1、更新镜像
首先基于修改一个镜像
如在debian镜像中添加一个vip.txt文件
完成操作后,退出容器,
通过命令 docker commit 来提交容器副本docker commit -m="vip.txt" -a="wyf" 0589a87d786c debian:vip
各个参数说明:
-m: 提交的描述信息
- -a: 指定镜像作者
- 0589a87d786c:容器 ID
- debian:vip: 指定要创建的目标镜像名
2、构建镜像
使用命令 docker build , 从零开始来创建一个新的镜像。为此,我们需要创建一个 Dockerfile 文件,其中包含一组指令来告诉 Docker 如何构建我们的镜像。cat Dockerfile
FROM debian:latestRUN /bin/echo 'root:123456' |chpasswdRUN useradd wyfRUN /bin/echo 'wyf:123456' |chpasswdRUN /bin/echo -e "LANG=\"en_US.UTF-8\"" >/etc/default/localEXPOSE 22EXPOSE 80CMD /usr/sbin/sshd -D
每一个指令都会在镜像上创建一个新的层,每一个指令的前缀都必须是大写的。
第一条FROM,指定使用哪个镜像源
RUN 指令告诉docker 在镜像内执行命令,安装了什么。。。
然后,我们使用 Dockerfile 文件,通过 docker build 命令来构建一个镜像。
docker build -t debian:b1 .

然后可以通过docker images看到新镜像
使用新镜像创建容器
docker run -it debian:b1 /bin/bash
3、设置镜像标签
docker tag 镜像ID,这里是 58b410fb4914 ,用户名称、镜像源名(repository name)和新的标签名(tag)。
docker tag 58b410fb4914 debian:deploy
使用 docker images 命令可以看到,ID为58b410fb4914的镜像多一个标签。
