你有Docker;现在怎么办呢?

人工Docker注册表

现在几乎所有的组织都在开发软件使用码头工人。然而,有些人仍然没有信心将Docker应用到生产环境中。

让我们仔细看看这种犹豫背后的两个主要挑战,即Docker映像的可见性以及它们在哪里/如何管理。

挑战1:Docker映像中有什么

码头工人的图片不是空的,它们包含多个二进制文件(如操作系统包和应用程序)。将它们投入生产需要了解它们究竟包含什么内容。在使用Docker映像之前,您确实需要了解它们中的内容。例如,您需要确保它们中没有安全性和许可证漏洞,并且您使用的是正确的版本。大多数用户不知道安全问题,甚至不知道他们使用的是旧版本。

人工包查看器

挑战2:您的Docker映像存储和管理在哪里

当考虑在哪里存储和管理二进制文件时,文件系统或二进制文件的对象存储是不够的。它们甚至可能无法与客户端工具(如Maven客户端和Docker客户端)一起工作。此外,随着规模的扩大,跨分散站点的协作和依赖关系管理将变得更加复杂和难以管理。有些人甚至会考虑使用版本控制系统,比如Git。但是,Git是为源代码设计的,不应该被滥用于存储应用程序二进制文件。这对Docker来说真的不起作用。

二进制管理的挑战

此外,这些二进制文件是大型应用程序或服务的组件。不同的团队需要以可重复和可靠的方式,在管道的所有阶段跨一个或多个环境部署这些二进制文件及其依赖项。

那么,你是如何处理这一切的呢?最重要的是,您需要一个地方来获取所有二进制文件。如果它来自多个来源,那么很难管理。通用二进制存储库管理器可以帮助您解决所有这些问题。

通用二进制存储库:JFrog Artifactory

通用二进制存储库管理器为所有二进制文件提供了一个统一的数据源,无论它们是Docker镜像中的应用程序包、操作系统包还是Docker镜像本身。这使您能够以安全的方式持续自动地发布更新,同时确保您的发布在生产环境中始终使用受信任的二进制版本。

JFrog Artifactory,通用存储库管理器,帮你建立一个安全私有Docker注册表在几分钟内管理所有Docker映像,同时执行细粒度访问控制。Artifactory没有任何限制,允许您通过使用本地、远程和虚拟Docker存储库来设置任意数量的Docker注册表,并透明地与Docker客户端一起管理所有Docker映像,无论是内部创建还是从远程Docker资源(如Docker Hub)下载。2022世界杯阿根廷预选赛赛程

使用JFrog Artifactory管理Docker镜像的7大好处

    1. 促进多个Docker注册
      Artifactory允许您定义任意多的Docker注册表。这使您能够在不同的注册表中管理每个项目,并对Docker映像进行更好的访问控制。
    2. 自然地使用Docker
      Artifactory支持Docker注册API的相关调用,因此您可以透明地使用Docker客户端通过Artifactory访问映像。
    3. 具有细粒度访问控制的安全私有Docker注册表
      本地Docker存储库用于存储内部Docker映像,以便在整个组织中分发。通过内置的安全特性提供的细粒度访问控制,Artifactory提供了安全的Docker推送和拉取,与本地Docker存储库功能齐全,安全,私有Docker注册表
    4. 自信地促进图像生产
      Artifactory允许您将Docker映像作为不可变的、稳定的二进制文件,通过质量关口一直提升到生产环境。
    5. 对远程映像的一致和可靠访问
      Artifactory中的远程Docker存储库代理外部资源,如Docker Hub,或另一个Artifactor2022世界杯阿根廷预选赛赛程y实例中的远程Docker存储库,并缓存下载的映像。因此,减少了总体网络连接,并且对这些远程资源上的映像的访问更快、更一致、更可靠。2022世界杯阿根廷预选赛赛程
    6. 利用智能搜索的能力
      使用Artifactory的包搜索,以Docker最自然的方式使用图像名称,标签或摘要找到您的图像。
    7. JFrog端到端平台
      通过Artifactory与JFrog Bintray的紧密集成,您可以管理从开发到管道,一直到发布的Docker映像。

对于任何使用Docker的组织,无论是开发、测试还是生产,企业级二进制存储库都可以帮助您将Docker实现提升到一个新的水平。

本文所强调的Artifactory的好处只是冰山一角。您还必须考虑可伸缩性、安全性和高可用性。在以后的博客文章中,我们将介绍这些方面,并将它们应用到Docker实现中。