7.3.2. 使用 eap-s2i-build 模板构建应用镜像
eap-s2i-build
模板添加多个参数,以配置用于构建应用的应用源存储库的位置和 EAP S2I 镜像。通过此模板,您可以将镜像流用于任何 JBoss EAP 版本,如 JBoss EAP 7.3、JBoss EAP XP 或 JBoss EAP CD。
流程
- 在 OpenShift 中导入 EAP 映像。如需更多信息,请参阅导入 JBoss EAP XP 的最新 OpenShift 镜像流和模板。
- 配置镜像流以接收关于应用镜像流更改和触发新构建的更新。如需更多信息,请参阅配置定期导入 imagestreamtag。
创建
eap-s2i-build
模板,以使用 EAP S2I 镜像构建应用映像:$ oc replace --force -f https://raw.githubusercontent.com/jboss-container-images/jboss-eap-openshift-templates/master/eap-s2i-build.yaml
此
eap-s2i-build
模板会创建两个构建配置和两个镜像流,对应于中间构建构件和最终应用镜像。使用参数处理
eap-s2i-build
模板,以创建最终应用镜像的资源。以下示例创建了应用程序镜像my-app
:$ oc process eap-s2i-build \ -p APPLICATION_IMAGE=my-app \ 1 \ -p EAP_IMAGE=jboss-eap-xp1-openjdk11-openshift:1.0 \ 2 -p EAP_RUNTIME_IMAGE=jboss-eap-xp1-openjdk11-runtime-openshift:1.0 \ 3 -p EAP_IMAGESTREAM_NAMESPACE=$(oc project -q) \ 4 \ -p SOURCE_REPOSITORY_URL=https://github.com/jboss-developer/jboss-eap-quickstarts.git \ 5 -p SOURCE_REPOSITORY_REF=xp-1.0.x \ 6 -p CONTEXT_DIR=microprofile-config | oc create -f - 7
使用 EAP 操作器准备应用镜像以进行部署。
配置
WildFlyServer
资源:$ cat > my-app.yaml<<EOF apiVersion: wildfly.org/v1alpha1 kind: WildFlyServer metadata: name: my-app spec: applicationImage: 'my-app:latest' replicas: 1 EOF
应用这些设置,并让 EAP 操作器创建一个新的
WildFlyServer
资源来引用此应用程序镜像:$ oc apply -f my-app.yaml
使用以下命令查看
WildFlyServer
资源:$ oc get wfly my-app