使用镜像

时间:2019-09-17
本文章向大家介绍使用镜像,主要包括使用镜像使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本章将介绍更多关于镜像的内容,包括:

从仓库获取镜像;

命令:

docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签]     #默认拉取的是dockerhub中的镜像

例如:拉取nginx镜像

[root@localhost ~]# docker pull nginx

管理本地主机上的镜像:

1.列出镜像

docker image ls

列表包含了 仓库名 、 标签 、 镜像 ID 、 创建时间 以及 所占用的空间

2.查看镜像占用硬盘大小

 3.列出某个镜像

[root@localhost ~]# docker image ls nginx

4.以特定的格式显示镜像

5.删除本地镜像

命令:$ docker image rm [选项] <镜像1> [<镜像2> ...]

docker image rm ID

docker image rm 镜像名称

使用docker image ls来配合删除

例如:删除一个名为redis的镜像

docker image rm $(docker image ls -q redis)   #-q参数可以显示镜像id

例如:删除redis:2.2之前的镜像

docker image rm $(docker image ls -q -f before=redis:2.2)

例如:删除所有镜像 

 docker image rm $(docker image ls -q )

6.在容器中修改了文件,查看修改了哪些内容:可以使用docker diff命令

 docker diff显示结果中有三种状态

A 添加了一个文件或目录
B 文件或目录被删除
C原文出自

7.docker commit保存容器为镜像,一般用来保留现场,和虚拟机的快照功能比较相似

docker commit [选项] <容器ID或容器名> [<仓库名>[:<标签>]]

其中 --author 是指定修改的作者,而 --message 则是记录本次修改的内容。这点和 git

版本控制相似,不过这里这些信息可以省略留空。

8.Dockerfile制作镜像

Dockerfile 是一个文本文件,其内包含了一条条的指令,每一条指令构建一层,因此每一条指令的内容

FROM:

使用docker制作镜像的时候大部分情况下需要在原有的镜像基础上进行部署,当然也有不需要基于基础镜像的

的情况,例如swarm、coreos、etcd.

需要制定基础的镜像的时候可以使用下面命令

#以nginx镜像作为基础镜像进行操作,默认nginx会到dockerhub上下载
FROM nginx   
#不以任何镜像为基础镜像可以使用
FROM scratch

RUN:

RUN 指令是用来执行命令行命令的。由于命令行的强大能力, RUN 指令在定制镜像时是最

常用的指令之一。其格式有两种:

1.shell 格式: RUN <命令>

RUN echo "Hello Docker" > /usr/share/nginx/index/index.html

2.exec 格式: RUN ["可执行文件", "参数1", "参数2"]

RUN ["/bin/bash","-c","echo hello"]

介绍镜像实现的基本原理:

原文地址:https://www.cnblogs.com/python-cat/p/11535641.html