Docker 的流程
- Client :本机的 docker 执行命令的客户端
- DOCKER_HOST:本机 docker 服务
- Registry:docker 远程仓库
docker pull 流程
在本机 Client 发出 docker pull 执行命令到 DOCKER_HOST 本机 docker 服务的 Docker daemon 中,Docker daemon 会先在本机中寻找是否有相应的镜像,如果存在不进行任何操作,如果没有会从 docker 的远程仓库 Registry 中将相应的镜像拉取到本地服务;
docker run 流程
在本机 Client 发出 docker run 执行命令到 DOCKER_HOST 本机 docker 服务的 Docker daemon 中,Docker daemon 会先在本机中寻找是否有相应的镜像,如果不存在则会从 docker 的远程仓库 Registry 中将相应的镜像拉取到本地服务,然后通过一定方式将镜像运行起来变成 docker 的容器。
创建 Docker 镜像
使用命令:
docker pull [OPTIONS] NAME [:TAG]
此命令的作用是从docker 远程的仓库拉取镜像到本地。
相关参数说明:
- NAME 是必填的代表我们需要拉取的镜像名称
- [OPTIONS] 是代表拉取的镜像参数
- [:TAG] 是可选的,是代表镜像的版本;
举例:
拉取 hello-world 镜像命令: docker pull hello-world
查看 Docker 镜像
使用命令:
docker images [OPTIONS] [REPOSITORY[:TAG]]
此命令是来查看我们本机都有哪些镜像,也可以验证我们的 pull 是否执行成功
相关参数说明:
[OPTIONS] 镜像的参数;
[REPOSITORY[:TAG]] 镜像的名称 和 版本
实战
查看本机所有的 docker 镜像列表,下面展示的是没有安装镜像,只是打印出每一列的列头
说明
- REPOSITORY:表示镜像的仓库源
- TAG:镜像的标签
- IMAGE ID:镜像ID
- CREATED:镜像创建时间
- SIZE:镜像大小
安装 docker hello-word
第一行的意思指:自动添加一个 :tag 参数
docker pull hello-world:latest
前面几次都是下载失败,最后我开了代理,然后才可以下载完成。真是累啊。。。
下载完成,并且检查
到此,就完成了第一个镜像的安装。
容器中运行镜像
下载了 docker 的镜像,需要在容器中将 docker 的镜像运行起来。
相关命令
# 运行镜像
docker run [OPTIONS] IMAGE [:TAG] [COMMAND] [ARG...]
# 查看运行的容器
docker ps