ocker运行容器前需要本地存在对应的镜像,如果镜像不存在本地,Docker 会从镜像仓库下载(默认是 Docker Hub 公共注册服务器中的仓库)。
本章将介绍更多关于镜像的内容,包括:
从仓库获取镜像;
管理本地主机上的镜像;
介绍镜像实现的基本原理。
获取镜像
镜像时Docker 运行容器的前提。公共镜像仓库Docker Hub 以及阿里云的 容器镜像服务控制台上有大量的高质量的镜像可以用。
从 Docker Registry 获取镜像的命令是 docker pull 。其命令格式为:
docker pull [选项] [Docker Registry地址]<仓库名>:<标签>
具体的选项可以通过 docker pull --help 命令看到,这里我们说一下镜像名称的格式。
Docker Registry地址:地址的格式一般是 <域名/IP>[:端口号] 。默认地址是 Docker Hub。
仓库名:如之前所说,这里的仓库名是两段式名称,既 <用户名>/<软件名> 。对于 Docker Hub,如果不给出用户名,则默认为 library ,也就是官方镜像。
比如:
$ docker pull nginx
该命令相当于:
$ sudo docker pull registry.hub.docker.com/nginx:latest
即从注册服务器registry.hub.docker.com 的nginx 仓库中下载标记为latest 的镜像。当然latest可以被替换为具体的 tag 标签。一般指代该镜像的版本。
若是从其他注册服务器的仓库下载,则需在仓库名称前指定完整的注册服务器地址。以阿里云为例:
$ sudo docker pull registry.cn-hangzhou.aliyuncs.com//busybox
镜像下载到本地后,即可使用镜像创建容器应用了。
$ sudo docker run -it --rm docker.io/nginx /bin/bash
root@0f12efc2b28e:/# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
其中0f12efc2b28e,是容器的ID。
docker run 就是运行容器的命令,具体格式我们会在后面的章节讲解,我们这里简要的说明一下上面用到的参数。
-it :这是两个参数,一个是 -i :交互式操作,一个是 -t 终端。我们这里打算进入 bash 执行一些命令并查看返回结果,因此我们需要交互式终端。
--rm :这个参数是说容器退出后随之将其删除。默认情况下,为了排障需求,退出的容器并不会立即删除,除非手动 docker rm 。我们这里只是随便执行个命令,看看结果,不需要排障和保留结果,因此使用 --rm 可以避免
浪费空间。
docker.io/nginx:这是指用 docker.io/nginx:latest 镜像为基础来启动容器。
/bin/bash :放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 bash 。
退出容器可以使用 Ctrl+d 或 exit。
下一节将介绍如何查看镜像信息。
---------------------
作者:安心Smile
来源:CSDN
原文:https://blog.csdn.net/ANXIN997483092/article/details/82181720
版权声明:本文为博主原创文章,转载请附上博文链接!
镜像--3.1 获取镜像
最新推荐文章于 2023-07-24 15:16:52 发布