问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何查看dockerhub的所有镜像

发布网友 发布时间:2022-04-20 03:12

我来回答

1个回答

热心网友 时间:2022-04-13 06:07

让我们通过进一步学习Docker镜像来继续我们的Docker之旅。Docker镜像是由文件系统叠加而成。最底端是一个引导文件系统,即bootfs,这很像典型的Linux/Unix的引导文件系统。Docker用户几乎永远不会和引导文件系统有什么交互。实际上,当一个容器启动后,它将会被移到内存中,而引导文件系统则会被卸载(unmount),以留出更多的内存供initrd磁盘镜像使用。
到目前为止,Docker看起来还很像一个典型的Linux虚拟化栈。实际上,Docker镜像的第二层是root文件系统rootfs,它位于引导文件系统之上。rootfs可以是一种或多种操作系统(如Debian或者Ubuntu文件系统)。
在传统的Linux引导过程中,root文件系统会最先以只读的方式加载,当引导结束并完成了完整性检查之后,它才会被切换为读写模式。但是在Docker里,root文件系统永远只能是只读状态,并且Docker利用联合加载(union mount)技术又会在root文件系统层上加载更多的只读文件系统。联合加载指的是一次同时加载多个文件系统,但是在外面看起来只能看到一个文件系统。联合加载会将各层文件系统叠加到一起,这样最终的文件系统会包含所有底层的文件和目录。
Docker将这样的文件系统称为镜像。一个镜像可以放到另一个镜像的顶部。位于下面的镜像称为父镜像(parent image),可以依次类推,直到镜像栈的最底部,最底部的镜像称为基础镜像(base image)。最后,当从一个镜像启动容器时,Docker会在该镜像的最顶层加载一个读写文件系统。我们想在Docker中运行的程序就是在这个读写层中执行的。
这听上去有点儿令人迷惑,我们最好还是用一张图来表示一下,如图4-1所示。

图4-1 Docker文件系统层
当Docker第一次启动一个容器时,初始的读写层是空的。当文件系统发生变化时,这些变化都会应用到这一层上。比如,如果想修改一个文件,这个文件首先会从该读写层下面的只读层复制到该读写层。该文件的只读版本依然存在,但是已经被读写层中的该文件副本所隐藏。
通常这种机制被称为写时复制(copy on write),这也是使Docker如此强大的技术之一。每个只读镜像层都是只读的,并且以后永远不会变化。当创建一个新容器时,Docker会构建出一个镜像栈,并在栈的最顶端添加一个读写层。这个读写层再加上其下面的镜像层以及一些配置数据,就构成了一个容器。在上一章我们已经知道,容器是可以修改的,它们都有自己的状态,并且是可以启动和停止的。容器的这种特点加上镜像分层框架(image-layering framework),使我们可以快速构建镜像并运行包含我们自己的应用程序和服务的容器。
创建Docker Hub账号
构建镜像中很重要的一环就是如何共享和发布镜像。可以将镜像推送到Docker Hub或者用户自己的私有Registry中。为了完成这项工作,需要在Docker Hub上创建一个账号,可以从https://hub.docker.com/account/signup/加入Docker Hub,如图4-3所示。

图4-3 创建Docker Hub账号
首先需要注册一个账号,并在注册之后通过收到的确认邮件进行激活。
下面就可以测试刚才注册的账号是否能正常工作了。要登录到Docker Hub,可以使用docker login命令,如代码清单4-13所示。
代码清单4-13 登录到Docker Hub
$ sudo docker login
Username: jamtur01
Password:
Email: james@lovedthanlost.net
Login Succeeded

这条命令将会完成登录到Docker Hub的工作,并将认证信息保存起来以供后面使用。

注意

你的个人认证信息将会保存到$HOME/.dockercfg文件中。
将镜像推送到Docker Hub
镜像构建完毕之后,我们也可以将它上传到Docker Hub上面去,这样其他人就能使用这个镜像了。比如,我们可以在组织内共享这个镜像,或者完全公开这个镜像。

注意

Docker Hub也提供了对私有仓库的支持,这是一个需要付费的功能,你可以将镜像存储到私有仓库中,这样只有你或者任何与你共享这个私有仓库的人才能访问该镜像。这样你就可以将机密信息或者代码放到私有镜像中,不必担心被公开访问了。
我们可以通过docker push命令将镜像推送到Docker Hub。
现在就让我们来试一试如何推送,如代码清单4-77所示。
代码清单4-77 尝试推送root镜像
$ sudo docker push static_web
2013/07/01 18:34:47 Impossible to push a "root" repository.
Please rename your repository in <user>/<repo> (ex: jamtur01/
static_web)

出什么问题了?我们尝试将镜像推送到远程仓库static_web,但是Docker认为这是一个root仓库。root仓库是由Docker公司的团队管理的,因此会拒绝我们的推送请求。让我们再换一种方式试一下,如代码清单4-78所示。
或者如果原来已经存在settings.xml文件了,
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
邹树仁浅谈中国古彩戏法 编制教师5年内辞职付多少违约金 机动车驾驶证吊销后能办农机局驾驶证吗 我前几天去农机监理所去办拖拉机驾驶证(G证)但是工作人员说不给办... 现在农机证在哪可以办理啊,好多地方都办不了啊。 ...长出一撮白发,一元钱币大小,中间零星长有几根黑发,白发光亮 24岁有点少白头黑发里会有几根白头发…请问怎么调理…是不是身体将康... 开车可以看出一个人性格吗 开车有天赋的人是什么性格 知道物流货号,如何查物流 如何查看docker容器uid docker镜像版本问题 如何到载百度网议? 在ubuntu14.04中怎么查看docker的版本 docker支持的linux版本 如何查看 Docker 新版本中容器的名字空间 在ubuntu1404中怎么查看docker的版本 怎么看nova-docker的版本 怎么查看docker是否安装成功 如何查看 docker 镜像使用的linux 系统版本 急···帮我写一份商务谈判策划书 2022年北京冬奥会的会徽是什么? 2022冬奥会会徽的设计及寓意是什么? 北京2022冬奥会会徽是什么? QQ空间怎么用字艾特别人??? 2022年冬奥会会徽的构图及寓意是什么? qq怎么艾特人 2022冬奥会标志是什么? 北京2022年冬奥会会徽的名字是什么? 2022北京冬奥会的会徽是什么?有什么寓意吗? docker如何选择指定的linux镜像发行版本 怎么获得docker 查看容器id容器id windows10专业版重装docker时,一直白屏,没办法往... 女人如果不排卵会来月经吗? 综合征,说女性不排卵,那不排卵是不是就不会来大姨妈 女人不排卵的话会不会来月经 女人不排卵,是不是就不来月经了 有没有女人不排卵,排卵跟月经有没有关系 女士不排卵怎么办 有月经来就有排卵吗 女人不排卵有什么症状?怎么测? 怎样看出女人不排卵的表现? 怎么了解女性无排卵是什么原因,想问问? 为什么我的固态硬盘开启了AHCI,进系统就蓝屏 电脑设置ahci蓝屏了 我在bios设置ahci模式开机蓝屏怎么设置 为什么开了ahci模式后开机在win的启动画面时蓝屏 固态硬盘开启AHCI模式后开机蓝屏 我的电脑在AHCI模式下安装系统怎么蓝屏 为什么我的固态硬盘开启了AHCI,进系统就蓝屏?