专栏首页VVcblogDocker 快速入门(三)- 在 Docker Hub 上共享镜像

Docker 快速入门(三)- 在 Docker Hub 上共享镜像

前提条件

第二部分,按照步骤构建镜像并将其作为一个容器化应用程序运行。

介绍

现在,您已经在本地开发机器上构建了第二部分中描述的容器化应用程序。开发容器化应用程序的最后一步是在像 Docker Hub 这样的注册表上共享镜像,以便它们可以被轻松地下载和运行在任意目标机器上。

设置您的 Docker Hub 帐户

如果您没有 Docker ID,请按照以下步骤创建一个。Docker ID 允许你在 Docker Hub 上共享镜像。

  • 访问 Docker Hub 注册页。
  • 填写表单并提交创建您的 Docker ID。
  • 验证您的电子邮件地址,以完成注册流程。
  • 单击工具栏或系统托盘中的 Docker 图标,然后单击 登录/创建 Docker ID(Sign in / Create Docker ID)。
  • 填写您的新 Docker ID 和密码。在您成功地通过身份验证之后,您的 Docker ID 将出现在 Docker Desktop 菜单中,取代您刚刚使用的“登录”选项。

您还可以从命令行输入 docker login 登录 Docker Hub。

创建 Docker Hub 仓库并推送您的镜像

在创建仓库之前,请确保您已设置您的 Docker Hub 账户并将其连接到 Docker Desktop。

现在,让我们创建第一个仓库,并将公告栏镜像推送到 Docker Hub。

  1. 单击菜单栏中的 Docker 图标,导航到 Repositories > Create。您将被重定向到 Docker Hub 上的 Create Repository 页。
  2. 输入仓库名 bulletinboard 然后在页面底部点击 Create 。暂时不要填写任何其他细节。
  1. 您现在已经准备好在 Docker Hub 上共享镜像了,但是,必须先做一件事:镜像必须正确地设置命名空间,才能在 Docker Hub 上共享。具体来说,您必须将镜像命名为: <Your Docker ID>/<Repository Name>:<tag> 。 请确保您在终端或者 PowerShell 中的 node-bulletin-board/bulletin-board-app 目录下,然后运行: docker tag bulletinboard:1.0 <Your Docker ID>/bulletinboard:1.0
  2. 最后,将您的镜像推送到 Docker Hub: docker push <Your Docker ID>/bulletinboard:1.0 在 Docker Hub 中访问您的仓库,您将在那里看到您新的镜像。记住,Docker Hub 仓库在默认情况下是公开的。 推送遇到麻烦?请记住,您必须通过 Docker Desktop 或命令行登录到 Docker Hub,并且必须按照上述步骤正确命名您的镜像。如果推送看起来有效,但在 Docker Hub 中看不到新的镜像,请在几分钟后刷新浏览器,然后再次检查。

结论

现在您的镜像已经可以在 Docker Hub 上使用了,您可以在任何地方运行它了。如果您试图在一台还没有它的新机器上使用它,Docker 将自动尝试从Docker Hub 下载它。通过这种方式移动镜像,您不再需要在想要运行您的软件的机器上安装除了 Docker 以外的任何依赖项。容器化应用程序的依赖项完全封装并隔离在您的镜像中,您可以使用上面描述的 Docker Hub 来共享镜像。

另一件需要记住的事情是:目前,您只是把您的镜像推送到了 Docker Hub,您的 Dockerfile 呢?一个关键的最佳实践是将它们保存在版本控制中,可能与应用程序的源代码放在一起。您可以在 Docker Hub 仓库描述中添加一个链接或注释,指示在何处可以找到这些文件,这样不仅可以保存镜像如何构建的记录,还可以保存镜像作为完整的应用程序运行的记录。

下一步做什么

我们建议您看一下 Develop with Docker 中的主题,学习如何使用 Docker 开发您自己的应用程序。

原文链接:https://www.cnblogs.com/ittranslator/p/13215081.html

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Docker系列学习文章 - 镜像仓库的介绍(七)

    | 导语 前面我们讲了镜像的制作,知道了镜像是怎么生成的。但是镜像制作好了后,要怎么管理?他们存在哪里。通过本篇文章的讲解,大家就清楚了。

    宝哥@上云专家
  • DockerHub再现百万下载量黑产镜像,小心你的容器被挖矿

    ? 前言 ? 近年来云原生容器的应用越来越流行,统计数据显示高达47%生产环境容器镜像会来源于公用仓库[1],Docker Hub作为全球最大的公共容器镜像仓...

    云鼎实验室
  • Docker学习笔记之从镜像仓库获得镜像

    之前我们说到了,Docker 与其他虚拟化软件的一处不同就是将镜像管理纳入到了功能之中。实现虚拟化只是程序能够无缝移植的一部分,而有了镜像管理,就真正取代了我们...

    Jetpropelledsnake21
  • 如何让Docker镜像飞起来

    Docker用起来非常爽,尤其是用于DevOps实践时。但是,当你在国内或者本地拉取镜像时,经常会碰到各种“便秘”——要么镜像拉取缓慢,要么时断时连,要么连接超...

    雪雁-心莱科技
  • Spring Boot2 系列教程(四十二)使用 Jib 部署 Spring Boot

    之前松哥和大家分享过一篇将 Spring Boot 项目部署到远程 Docker 上的文章:

    江南一点雨
  • 测试开发人员该如何看待容器技术

    严格来讲,测试开发也属于开发的一种,只是输出的产品和服务的用户群不同罢了,我所在的部门主要负责通过技术手段提高部门内业务测试和开发同学的工作效率来达到保障产品质...

    岛哥的质量效能笔记
  • Docker学习笔记之使用 Docker Hub 中的镜像

    自己编写 Dockerfile 能够很好的实现我们想要的程序运行环境,不过如果装有我们想要环境的镜像已经由热心的开发者构建好并共享在 Docker Hub 上,...

    Jetpropelledsnake21
  • 你必须知道的Docker镜像仓库的搭建

    近期工作中发现用到的容器镜像越来越多(不多的时候没考虑过镜像仓库的问题),同一个容器镜像也存在多个版本,那么镜像仓库的搭建需求就涌现出来,本文就目前的几个常用镜...

    Edison Zhou
  • Docker学习总结之docker入门 What is Docker?What can I use Docker for?What are the major Docker components?

      Understanding Docker 以下均翻译自Docker官方文档 ,转载请注明:Vikings翻译。 What is Docker? Dock...

    随机来个数
  • 你必须知道的Docker镜像仓库的搭建

    近期工作中发现用到的容器镜像越来越多(不多的时候没考虑过镜像仓库的问题),同一个容器镜像也存在多个版本,那么镜像仓库的搭建需求就涌现出来,本文就目前的几个常用镜...

    心莱科技雪雁
  • 小白也能玩转Kubernetes 你与大神只差这几步

    6月30日,腾讯云联合InfoQ举办的云+社区技术沙龙,以Kubernetes 上云一键部署、云上大规模计算平台构建、CIS底层技术实现、Tencent Hub...

    云加社区技术沙龙
  • 高中生也能读懂的Docker入门教程

    Docker 是 Golang 编写的, 自 2013 年推出以来,受到越来越多的开发者的关注。如果你关注最新的技术发展,那么你一定听说过 Docker。不管是...

    小小科
  • 为DevOps团队新春送福—— JFrog与Docker建立突破性的合作伙伴关系

    值此新春佳节将近之际,JFrog为广大DevOps团队奉上新春福利:我们宣布一项能够为我们的客户和整个DevOps社区带来实质性收益的重大举措,那就是,JFro...

    JFrog杰蛙科技
  • Docker 获取和推送镜像

    Docker Hub 的官方网站 https://hub.docker.com/

    程序员果果
  • Docker 从入门到实践

    小小科
  • 为 Docker 配置镜像加速器(解决 TLS handshake timeout 问题)

    当我们下载并安装完 Docker Desktop for Windows,运行 Docker 快速入门(一)- 情况介绍和安装 中的示例命令 docker ru...

    用户8803964
  • 资源 | GitHub新项目Deepo:一键安装11项深度学习框架与环境

    机器之心
  • 面向开发人员的Docker入门级实战,真香

    2013年“去IOE”这个话题在IT圈火热起来,它是由阿里巴巴提出的概念,意思是在IT架构中,去掉IBM的小型机、Oracle数据库、EMC存储设备,以自己在开...

    JavaQ
  • 高中生也能读懂的Docker入门教程

    Docker 是 Golang 编写的, 自 2013 年推出以来,受到越来越多的开发者的关注。如果你关注最新的技术发展,那么你一定听说过 Docker。不管...

    小小科

扫码关注云+社区

领取腾讯云代金券