CoreOS为构造优化的容器工作流(现在是Red Hat)

艺术与构造

关注我们最近的博客Artifactory与OpenShift的集成现在,您可以将驻留在Artifactory上的二进制文件部署到另一个专门用于企业的Kubernetes平台构造上集装箱microservices更多的安全。

Artifactory与构造集成以支持端到端二进制管理,克服了处理的复杂性不同的软件包管理系统,如Docker, NPM,和Conan (c++), RPM,为您的CI/CD工作流程提供一致性。在本博客中,我们将向您展示如何在Artifactory上将您的二进制文件部署到constructor平台上。

随着企业中多语言编程的增加,在CI过程中会产生大量有价值的元数据,并由Artifactory捕获。利用此元数据的主要优点之一(建立信息)是从docker-manifest一直到应用层的可跟踪性。例如,在Docker构建对象(Docker -manifest)中,很容易跟踪负责生成应用层(如WAR文件)的CI作业,该应用层是Docker映像层的一部分,由Docker -manifest引用。Artifactory通过使用Docker构建信息.此外,Artifactory支持多站点复制

将Artifactory上的Docker映像部署到构造上

先决条件

验证构造实例是活动的。

下面的步骤展示了如何部署托管在上面的Docker映像JFrog Artifactory作为Kubernetes Docker注册表构造。在本例中,我们创建了一个示例部署。yaml文件部署Docker映像,该映像是Artifactory的Docker虚拟存储库的一部分。

  1. 使用Docker Config创建一个秘密来保存Artifactory身份验证令牌Docker注册表项目,运行以下命令:

    Kubectl创建秘密码头-注册表rt-registrykey--码头工人-服务器码头工人-虚拟artifactorycom--码头工人-用户名$ {USERNAME}--码头工人-密码${密码}--码头工人-电子邮件test@test
  2. 运行以下命令example-deployment.yaml将容器化微服务部署到constructor,运行以下命令:

    Kubectl创建-f example-deploy .yaml

    下面的示例-部署。Yaml文件是一个定制的模板,可以根据您的需要进行编辑。注意,我们添加了以下引用:

    - - -部署对象指向Docker映像,它是Artifactory的Docker虚拟存储库的一部分。

    图片:docker-virtual.artifactory.com/nginx: 1.12

    - - - - - -ImagePullSecrets设置为:

    imagePullSecrets: - name:rt-registrykeyexample-deployment.yamlsample
    apiVersion扩展/v1beta1种类部署元数据:的名字例子-部署
    名称空间默认的标签:美丽-应用程序例子规范:副本3.模板:元数据:标签:美丽-应用程序例子规范:容器:-的名字nginx图片:docker-virtual.artifactory.com/nginx: 1.12
    港口:-的名字httpcontainerPort80imagePullSecrets: - name:rt-registrykey

    身份验证成功后,从Artifactory中提取一个映像Docker虚拟存储库

  3. 登录到构造UI >部署,查看Docker部署状态。
    在构造中使用Artifactory部署
  4. 创建service和ingress对象来访问nginx服务,示例如下:

    种类服务
    apiVersion: v1metadata:
    • 的名字例子-服务名称空间默认的规范:选择器:美丽-应用程序例子港口:-协议TCP港口80类型NodePortapiVersion扩展/v1beta1种类入口元数据:的名字例子-入口名称空间默认的注释:kubernetesio/入口“构造”入口kubernetesio/重写-目标/入口kubernetesio/ssl-重定向“真正的”入口kubernetesio/使用-港口--重定向“真正的”规范:规则:-宿主控制台tectonicsandboxcomhttp:道路:-路径/例子-部署后端:例子-服务servicePort80
  5. 访问构造控制台并运行库贝克特得到了一切命令,查看服务状态和入口对象状态。
    在构造中使用Artifactory部署