1.获取镜像
#docker pull [docker regeistry地址]<镜像名>[:标签名]
*只指定镜像名的话,默认会获取lastet标签标记的镜像.
2.查看镜像信息
docker images [选项][<镜像名>][:<标签>]
-a:列出本地所有镜像(含中间镜像层,默认情况下会过滤)
-f:显示出满足条件的镜像
-q:只显示出镜像ID
3.查找镜像
docker search [选项] TERM
--automated:默认为False,即显示automated build 的镜像
--no-trunc:默认为False,即显示镜像的完整信息.
-s:列出收藏数不小于指定值的镜像
4.标记镜像
docker tag [镜像名]:[原标签名] [镜像名]:[新标签名]
5.删除镜像
docker rmi [选项] 镜像1 [镜像2]
-f:强制删除
--no-prune:不移除该镜像的过程镜像,默认是移除该镜像的过程镜像的
6.镜像的导入和导出
docker save [OPTIONS] IMAGE [IMAGE...] //将指定镜像保存成 tar 归档文件。
-o:输出到指定文件
docker load [OPTIONS] //导入使用docker save 命令导出的镜像。
--input,-i:指定导出的文件,代替STDIN(标准输入)。
--quoet,-q:精简输出信息
7.镜像上传
docker push [镜像名]:[标签名]
8.创建镜像
docker commit //手动构建
docker build 或 dockerfile 文件进行构建
docker commit 只提交容器镜像发生变化的部分,即修改后的镜像与当前镜像仓库的差异部分。
docker commit [选项]<容器id或容器名>[<仓库名>[:<标签>]]
-a:提交镜像的作者
-c:使用dockerfile指令来创建
-m:提交时的说明文字
-p:提交时将容器暂停
docker commit的缺点:大量的不必要的软件安装,难以清理,黑箱操作,后期运维困难。只有创建镜像的人知道运行了什么命令,其他人无从得知。
9.MAINTAINER(维修工/作者)
可以放在dockerfile中任意位置,建议放在FROM后
MAINTAINER<name>
10.RUN指令
run <command> //指令
run["executable","param1","param2"] //可执行的,参数1,参数2
11.CMD指令//用于镜像中执行的命令
12.entrypoint指令 // 入口点
13ENV指令 //环境指令
14.ARG指令 // 用于定义构建时需要的参数
15.ADD指令 //将主机目录中的文件、目录以及URL标记的文件复制到镜像中
16.COPY指令 //与add相似,但不会做自动解压工作
17.VOLUME指令 //实现挂载功能,将本地文件或其他容器中的文件挂载到某个容器中
18.EXPOSE指令 //用于声明容器服务运行时的端口
19.WORKDIR指令 //设置容器的工作目录