云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

对象存储_课程网站建设_高性能

小七 141 0

简介

这是由三部分组成的博客文章系列的第一部分,内容涉及SAP Commerce(Hybris)的集装箱化和协调技术Docker和Kubernetes。本系列旨在利用Docker和Kubernetes在云上以主从模式部署和运行SAP Commerce(Hybris)和Solr standalone。

系列分为3个部分:

Valtech提供了一个定制配方,使Hybris Docker映像的创建和配置更为简单。在这篇文章中,我们将了解配方的细节,以及方面的概念,并了解定制方面的细节和配置。这两个概念都是博客文章系列的第二部分和第三部分的介绍。一种方法是运行平台附带的ant任务"createPlatformImageStructure",第二种方法是使用Valtech自定义配方。

使用ant任务创建Hybris Docker映像

Hybris提供了通过ant任务"createPlatformImageStructure"创建Docker映像的方法。这里有更多的细节。

下面是需要执行的ant命令:

简单,对吗?如果你和我一样,现在你应该想到一个明显的问题——"如果Hybris提供了一种创建Docker形象的方法,为什么需要一种不同的方法?"让我们在下面检查一下。

为什么要定制食谱?

配方的优点是,本地属性像DB URL、Solr URL,以及几乎所有环境(Dev、Staging、Production)的其他属性都会改变。例如,您构建了一个具有所有所需功能的平台映像,但是您需要为每个环境构建一个具有正确属性集的单独映像,这不一定是坏事,但是如果您希望创建一个映像并通过将上述属性外部化来在所有环境中使用它,返利app怎么用,并且能够设置它们在运行时,这不是很酷吗?食谱就是这么做的!

接下来,本文的其余部分将着重于从定制配方创建Docker图像。

使用定制配方

充分介绍,让我们深入了解细节。配方可以从存储库中克隆。本系列的第二部分将介绍如何从配方创建Docker图像。此配方提供了安装SAP Hybris Commerce Responsive B2C Commerce Accelerator所需的一切,包括Spartacus相关扩展和HSQLDB和Hybris平台的容器化。

让我们了解配方的关键组件,我们将详细介绍每个组件构建.gradle包含两个Docker映像的配置(Hybris和HsqlDB)。

Hybris有一个平台容器化Gradle插件来创建Docker映像。自定义配方扩展插件。平台插件的文档可以在这里找到。

正如您所注意到的,在platformimage/dockerbasics目录中,您可以看到模板文件;它们作为基本模板。如果需要添加/删除任何内容,可以对这些文件进行更改。模板文件有占位符,这些占位符将替换为中的值默认值。属性运行Gradle任务创建Dockerfile时的文件。

使用此方法的另一个好处是,假设需要更改Tomcat的一个支持。使用recipe,可以在recipe中配置tomcat端口,并在代码库中轻松维护。对于ant任务,这是不可能的,因为更改必须在平台文件夹中进行,而平台文件夹不在repo中维护Dockerfile.tmpl文件

默认值。属性(属性可以更改以满足您的需要)

如上所述,您可以使用此配方执行的操作之一是将配置外部化。让我们看看怎么做。你可能知道构建.gradle允许您定义本地属性除此之外。在该部分中,您可以为属性值定义占位符,Dockerfile允许您配置在运行时替换的属性。可以将特定于项目的任何要外部化的属性添加到构建.gradle.

构建.gradle

Dockerfile.tmpl文件

在本系列的下一部分中,您还将看到如何从docker compose、Kubernetes配置中覆盖这些属性。到目前为止,手游返利折扣,您应该已经注意到,我们正在为在云上运行Hybris设置外部化配置。

在继续创建Docker映像之前,需要引入的一个概念是"方面"。让我们看看。

Hybris Docker image封装了您在中启用的所有平台功能扩展信息.xml. 但是在运行平台时,物联网时代,您需要所有的功能吗?例如,在backoffice节点上,是否可以禁用店面?是否可以运行一个平台实例,它只运行一个巨大的批处理作业,并在作业完成后终止?是否可以运行一个以OCC的形式公开web服务的实例而不加载任何其他应用程序?方面使上述所有场景成为可能。利益?通过只启用绝对需要的应用程序,手机自助建站,可以最小化正在运行的Hybris实例的内存占用。这是通过在中禁用web应用程序来实现的本地属性. 例如,如果您想运行backoffice节点,则可以使用'aspects/onlyBackoffice/hybris/conf/50'中的属性文件-本地属性'内部的Docker图像将被使用。下面是backoffice方面的片段本地属性.

除了数据库url以此类推,海淘客,该文件还包含一个以.webroot=格式禁用的应用程序列表,此设置将告诉tomcat不要启用这些扩展。

aspects的另一个优点是,它允许我们用不同的JVM内存设置启动不同的实例。例如,backoffice节点可以配置与店面节点不同的内存设置。

对于一个映像,可以同时运行具有不同方面配置的平台的多个实例。

可用方面OOB是–默认(运行所有内容)、onlyBackoffice、onlyHac、allWebApps,非webapps.