创建从本地目录中提取源的构建配置

如果源位于本地工作站上,请使用包含有关从本地目录中提取源的位置的信息的设置来创建构建配置。 对于构建输出,可以指定注册表详细信息,或者让 Code Engine 管理 IBM Cloud Container Registry 详细信息。

您可以创建仅使用 Code Engine CLI 从本地目录提取源的构建配置。

提交从本地目录中提取代码的构建时,源代码将打包到归档文件中,并上载到 IBM Cloud Container Registry 实例。 请注意,只能将 IBM Cloud Container Registry 作为本地构建的目标。 将在与构建映像相同的名称空间中创建源映像。

您可以通过使用 .ceignore 文件来忽略源代码中的某些文件模式,该文件的行为与 .gitignore 文件类似。 例如,Node.js 应用程序的 .ceignore 文件条目可能包含 node_modules.npm。 有关要忽略的更多样本文件模式,请参阅 GitHub.gitignore 存储库

创建构建配置不会创建映像,但会创建用于构建映像的配置。 然后,必须运行引用构建配置的构建以创建映像。 在运行构建之前,不会验证构建配置或使用构建配置来创建映像。 构建配置支持映像的多个后续构建,例如,将更改应用于源存储库时。

要使用 CLI 创建从本地目录提取代码的构建配置,请使用 build create 命令并将 build-type 指定为 local。 有关选项的完整列表,请参阅 ibmcloud ce build create 命令。

使用 build create 命令,可以让 Code Engine 从源构建映像,并将该映像存储在 IBM Cloud Container Registry中。 对于此 自动访问 情况,您不需要指定注册表私钥或映像注册表的位置。 或者,您可以指定构建映像输出的位置并提供注册表私钥,以便 Code Engine 可以访问构建结果并将其推送到注册表。

使用 CLI 创建构建配置 (具有本地源和对注册表的自动访问权)

在此场景中,Code Engine 从本地源构建映像,并自动将该映像上载到 IBM Cloud Container Registry。 请参阅 设置映像注册表的权限,以获取有关设置 Code Engine 自动访问 Container Registry中的这些映像所需的许可权的更多信息。

准备工作

创建构建配置以在本地工作站上从源构建映像,并使 Code Engine 自动存储和访问该映像。 当您指定 local 作为 -build-type 的值时,只能将 IBM Cloud Container Registry 作为本地构建的输出的目标。 在此示例中,该命令使用缺省 dockerfile 策略和缺省 medium 构建大小。 通过不指定映像注册表或注册表私钥的位置,Code Engine 将构建输出推送到具有自动访问权的 IBM Cloud Container Registry。

ibmcloud ce build create --name build-local-dockerfile --build-type local

创建构建配置后,必须 运行构建 以创建映像文件。 创建映像文件后,可以 部署应用程序 或使用新构建的映像文件 运行作业

使用 CLI 创建构建配置 (具有本地源和用户提供的对注册表的访问权)

在此场景中,Code Engine 从本地源构建映像,然后使用您提供的注册表访问权将该映像上载到容器注册表。

准备工作

创建构建配置以在本地工作站上从源构建映像,并使用注册表私钥为构建输出指定映像注册表的位置。 通过 build create 命令,当您指定 local 作为 --build-type 的值时,只能将 IBM Cloud Container Registry 作为本地构建的输出的目标。 指定 --image 选项以提供映像注册表的位置,并指定 --registry-secret 选项以访问注册表。 在此示例中,该命令使用缺省 dockerfile 策略和缺省 medium 构建大小。

ibmcloud ce build create --name build-local-dockerfile --build-type local --image us.icr.io/mynamespace/codeengine-build --registry-secret myregistry

创建构建配置后,必须 运行构建 以创建映像文件。 创建映像文件后,可以 部署应用程序 或使用新构建的映像文件 运行作业