1.5. 使用 Dekorate 自动执行 OpenShift Source-to-Image 构建
在使用 Maven 编译应用程序后,您可以使用 Dekorate 自动执行 OpenShift 容器镜像构建。
请注意,使用 Dekorate 自动触发 Source-to-image 构建的 功能作为技术预览提供。红帽不支持在生产环境中使用此功能。
先决条件
- 基于 Maven 的应用项目配置为使用 Spring Boot 和 Dekorate。
-
@SpringBootApplication注解添加到项目中的源文件中。 - Java JDK 8 或 JDK 11 已安装。
- 已安装 Maven。
-
已安装
oc命令行工具。 -
使用
oc命令行工具登录到 OpenShift 集群。
流程
将 Dekorate OpenShift Spring Starter 作为依赖项添加到应用程序的
pom.xml文件中。请注意,此模块作为传输依赖项包含在所有 Dekorate OpenShift Starters 中:<project> ... <dependencies> ... <dependency> <groupId>io.dekorate</groupId> <artifactId>openshift-spring-starter</artifactId> <version>${dekorate.version}</version> </dependency> ... </dependencies> ... <project>构建并部署您的应用。包含
-Ddekorate.build=true属性,用于在 Maven 编译应用程序后执行容器镜像构建。请注意,自动执行 Source-to-image 构建的 功能作为技术预览提供。$ mvn clean install -Ddekorate.build=true
在使用 Maven 编译应用程序后,您还可以从命令行手动执行 Source-to-image 构建:
# Process your application YAML template that is generated by Dekorate: $ oc apply -f target/classes/META-INF/dekorate/openshift.yml # Execute the Source-to-image build and deploy your application to the OpenShift cluster: $ oc start-build example --from-dir=./target --follow