组件是一组构成应用程序的可部署工件。组件包括可运行文件、图像、数据库和配置指示信息。
JPetStore 样本应用程序包括三个组件:
- 应用程序组件包括应用程序的逻辑。此组件由名为 JPetStore.war 的单个 Web 归档文件组成。
- Web 组件包括应用程序的静态 Web 内容,其中包括 Web 界面的图像。
- 数据库组件包括应用程序的数据库和用于将数据库模式升级到新版本的脚本。
在大多数情况下,您通过将
IBM® UrbanCode Deploy
服务器连接至托管工件的系统来添加组件。服务器可以从许多构建系统和源代码管理系统导入工件。当工件更改或新的构建过程运行时,服务器可以自动创建组件的新版本。但是,为了简单起见,在本课程中,您会将组件的文件复制到服务器并从服务器访问这些文件。有关根据构建系统和源代码管理系统上的工件创建组件的更多信息,请参阅
创建组件。
- 通过单击以下链接来下载 artifacts.zip 文件: artifacts.zip
还可以在 IBM developerWorks®
上的 DevOps Learning
Circle(网址为 https://www.ibm.com/developerworks/community/groups/service/html/communityview?communityUuid=860ff390-6cab-4f95-ab37-66d2ca7521b4)的“文件”部分中找到此文件
- 将 artifacts.zip 文件复制到 IBM UrbanCode Deploy 代理程序计算机并将其解压。 此文件包含每个组件的不同文件夹;这些文件夹名为
app、web
和 db。这些文件夹都包含一个或多个文件夹(例如,名为
1.0 或 1.1 的文件夹);这些文件夹表示工件的不同版本。
对于本教程,必须将这些文件夹放置在托管 IBM UrbanCode Deploy 代理程序的同一系统上。
- 登录 IBM UrbanCode Deploy 服务器。
- 创建应用程序组件:
- 单击组件选项卡,然后单击创建新组件。 在此窗口中,请指定该组件的工件所在的位置。
- 在名称字段中,输入 JPetStore-APP。
- 在源配置类型列表中,选择文件系统(已版本化)。
- 在基本路径字段中,指定服务器上
app 文件夹的位置,例如,/home/user1/artifacts/shared/app。
- 在缺省版本类型下,单击使用单个代理程序导入新的组件版本,然后在用于导入版本的代理程序列表中选择代理程序。
- 接受页面上其他字段的缺省值。
- 单击保存。
- 导入该组件的版本:
- 单击版本选项卡。
- 单击导入新版本。 导入过程显示在“当前运行的版本导入”部分中。该过程完成后,服务器将创建基于
app 文件夹中文件夹的组件的版本。在这种情况下,服务器将创建基于
app/1.0 文件夹的组件的单个版本。您可能需要刷新该页面才能看到新版本。
- 验证该组件的版本 1.0 是否显示在版本列表中,如下图中所示:
现在,该组件可以用在一个或多个应用程序中。
- 创建数据库组件:
- 单击组件选项卡,然后再次单击创建新组件。
- 将名称指定为 JPetStore-DB。
- 在源配置类型列表中,选择文件系统(已版本化)。
- 在基本路径字段中,指定服务器上
db 文件夹的位置,例如,/home/user1/artifacts/shared/db。
- 在缺省版本类型下,单击使用单个代理程序导入新的组件版本,然后在用于导入版本的代理程序列表中选择代理程序。
- 接受页面上其他字段的缺省值。
- 单击保存。
- 单击版本,然后单击导入新版本。
现在,服务器显示数据库组件的两个版本。
- 创建 Web 组件:
- 单击组件选项卡,然后再次单击创建新组件。
- 将名称指定为 JPetStore-WEB。
- 在源配置类型列表中,选择文件系统(已版本化)。
- 在基本路径字段中,指定服务器上
web 文件夹的位置,例如,/home/user1/artifacts/shared/web。
- 在缺省版本类型下,单击使用单个代理程序导入新的组件版本,然后在用于导入版本的代理程序列表中选择代理程序。
- 接受页面上其他字段的缺省值。
- 单击保存。
- 单击版本,然后单击导入新版本。
现在,服务器显示 Web 组件的两个版本。
- 删除数据库组件和 Web 组件的最新版本,以便您稍后可以尝试更新组件:
- 单击组件,然后单击 JPetStore-DB 组件。
- 单击版本。
- 在版本列表内名为 1.1 的版本所在的行中,单击删除。 您稍后将再次导入此版本。
- 类似地,删除 JPetStore-Web 组件的版本 1.1。
除了文件和其他工件之外,组件还包含组件进程,这些进程描述如何部署组件、安装组件、卸载组件、更新组件或如何运行组件上的其他任务。在下一课程中,您将创建用于描述如何安装组件的进程。