像我们在《Node.js Hello World Docker Container from scratch》一文中创建的图像很简单,但它是一个完美的例子,可以尝试Docker的一个很酷的功能,通过Docker Hub提供的公共和私人Docker镜像的官方托管服务。
然而,在这之前,我们需要在Docker Hub上注册。
Docker Hub的基本计划是免费的,包括无限的公共仓库和一个私人仓库。对于更多的,有付费计划。
一旦你注册并登录,你将看到你的仪表板。

现在使用你的用户名,你需要使用docker login 从命令行登录。
docker login --username <username>

现在你可以用docker tag 来创建镜像,用docker push 来把它推送到Docker Hub。
docker tag <image> <username>/<tagname>
docker push <username>/<tagname>
如果你忘记登录,当你运行
docker push,你会得到一个denied: requested access to the resource is denied的错误信息。

现在你应该在Docker Hub的存储库列表中看到你的镜像。

点击它以显示更多细节。

现在,由于这个镜像是公开的,每个人都可以用它来创建自己的容器,或者把它作为一个基础镜像。
你现在可以创建一个新的标签,制作一个新版本的镜像,还有很多你可以做的事情,我现在就不多说了,比如。
- 从外部资源库(如GitHub)自动构建镜像
- 运行自动测试
- 设置webhooks,在版本库镜像更新时执行任何操作
- 创建组织和其中的团队