docker学习笔记一:镜像篇
1. docker核心技术之镜像
- 镜像:镜像是一个Docker的可执行文件,其中包括运行应用程序所需的所有代码内容、依赖库、环境变量和配置文件等。通过镜像可以创建一个或多个容器。
1.1 镜像管理
- 1. docker search :作用搜索dockerhub上的镜像资源。
- 命令格式:docker search [OPTIONS] TERM命令参数(OPTIONS):
- -f, --filter filter:根据提供的格式筛选结果
- –format string:利用Go语言的format格式化输出结果
- –limit int:展示最大的结果数,默认25个
- –no-trunc : 内容全部显示
- 命令格式:docker search [OPTIONS] TERM命令参数(OPTIONS):
- docker search 命令演示:
- 1.1 docker search centos:在dockerhub上搜素名称包含centos的镜像资源。
- 1.2 docker search -f is-official=true cent: 搜索官方镜像中的名称含有cent的镜像
- 1.3 docker search --limit 3 cent:限制展示的数量为不超过3条,当–limit与-f联合执行的时候,其执行顺序为先执行–limit然后再行-f
- 1 4 docker search --no-trunc cent:能够将未显示的部分,去不展开显示,比如镜像描述信息。
- 2. docker images/ docker image ls:作用为查看本地镜像,两个命令实际上是一样的
- 作用: 列出本地镜像命令格式:
docker images [OPTIONS][REPOSITORY[:TAG] 或者 docker image ls [OPTIONS][REPOSITORY[:TAG]
- 命令参数(OPTIONS):
- -a, --all 展示所有镜像 (默认隐藏底层的镜像)
- –no-trunc 不缩略显示
- -q, --quiet 只显示镜像ID
- 命令参数(OPTIONS):
从上面的例子可以看出, docker images ubunt* 是支持通配符的, 但是如果本地有两个不同版本的Ubuntu的话,那么通配符就会失效, 此时必须加上具体的版本号也就是TAG, 也就是docker images ubunt*:latest
(但是我安装的docker再这种情况下,通配符仍然可以使用,我使用的是Ubuntu)
- 3. docker pull:
- 作用:下载远程仓库(如Docker Hub)中的镜像
- 命令格式: docker pull [OPTIONS] NAME[:TAG|@DIGEST]
- 命令参数(OPTIONS):
- -a, --all-tags 下载所有符合给定tag的镜像
- 注意:在通过docker pull Ubuntu:18.04下载镜像的时候,如果本地已经有这个版本的镜像的话,那么不会出现下载界面进度条,而是重新创建一个镜像,镜像id与已存在的镜像id是相同的
-
**4. docker rmi / docker image rm **
- 作用:将本地的一个或多个镜像删除
- 命令格式:
docker rmi [OPTIONS] IMAGE [IMAGE...] 或者 docker image rm [OPTIONS] IMAGE [IMAGE...]
- 命令参数(OPTIONS):
- -f, --force 强制删除镜像, 当我们使用镜像创建出来容器之后,那么这个镜像是不能删除的,那么可以使用这个参数来强制删除这个镜像。
- 命令格式:
- 作用:将本地的一个或多个镜像删除
-
**5. docker save **
- 作用:将本地的一个或多个镜像打包保存成本地tar文件(输出到STDOUT)
- 命令格式:docker save [OPTIONS] IMAGE [IMAGE…]
- 命令参数(OPTIONS):
- -o, --output string 指定写入的文件名和路径,也可以使用
>
重定向到linux.tar之中.
- -o, --output string 指定写入的文件名和路径,也可以使用
- 命令参数(OPTIONS):
- 注意:当使用docker save的时候一定不要使用imageid这样load之后的镜像会导致TAG和REPOSITORY名称丢失的情况。
- 命令格式:docker save [OPTIONS] IMAGE [IMAGE…]
- 作用:将本地的一个或多个镜像打包保存成本地tar文件(输出到STDOUT)
- 6.docker load
- 作用:将save命令打包的镜像导入本地镜像库中
- 命令格式:docker load [OPTIONS]
- 命令参数(OPTIONS):
- -i, --input string 指定要打入的文件,如没有指定,默认是STDIN
- 命令参数(OPTIONS):
- -q, --quiet 不打印导入过程信息
- 命令格式:docker load [OPTIONS]
- 7.docker tag
- 作用:对本地镜像的NAME、TAG进行重命名,并新产生一个命名后镜像,如果本地镜像的NAME、TAG均为None的话,那么并不会新建一个镜像而是将之前的镜像覆盖了。
- 命令格式:
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
- 命令参数(OPTIONS):无
- 8. docker image inspect/docker inspect docker_object_
- 作用:查看本地一个或多个镜像的详细信息
- 命令格式:
docker image inspect [OPTIONS] IMAGE [IMAGE...] 或者 docker inspect [OPTIONS] IMAGE [IMAGE...]
- 命令参数(OPTIONS):
- -f, --format string 利用特定Go语言的format格式输出结果
- 9.docker history
- 作用:查看本地一个镜像的历史(历史分层)信息
- 命令格式:
docker history [OPTIONS] IMAGE
- 命令参数(OPTIONS):
- -H, --human 将创建时间、大小进行优化打印(默认为true)
- -q, --quiet 只显示镜像ID
- –no-trunc 不缩略显示
- -H, --human 将创建时间、大小进行优化打印(默认为true)
- 命令参数(OPTIONS):
总结: