基础 :
1.拥有任意ack或者ask集群
2.拥有容器镜像仓库
3.github代码仓库
流程:
1.在代码层面pom.xml同级添加Dockerfile(可根据需求修改)
FROM maven:3.5.0-jdk-8-alpine AS builder
# add pom.xml and source code
ADD ./pom.xml pom.xml
ADD ./src src/
# package jar
RUN mvn clean package -Dmaven.test.skip=true
# Second stage: minimal runtime environment
From openjdk:8-jre-alpine
ENV LANG "zh_CN.UTF-8"
ENV TZ "Asia/Shanghai"
# copy jar from the first stage
COPY --from=builder target/app-0.0.1-SNAPSHOT.jar app-0.0.1-SNAPSHOT.jar
EXPOSE 8080
CMD ["java", "-jar", "app-0.0.1-SNAPSHOT.jar"]
2.镜像仓库
2.1创建命名空间
2.2代码源:与github仓库中及其中的dockerfile建立联系 ,选中提交构建,不使用缓存
2.3点击构建 如果构建成功则ok,不成功则看日志修改dockerfile
3.在容器集群中根据镜像创建应用
当应用创建成功后点击应用名,选择触发器,并生成url
4.镜像仓库
进入仓库,选中触发器,创建触发器,其中url为第三步生成的url
以上配置完成后达到效果:
每次提交代码,触发github hook ,阿里云基于dockerfile构建镜像,当镜像构建成功后调用触发器,k8s开始重新部署应用
网友评论