linux下集成jenkins gitlab 持续集成步骤和一些问题(一)
Target: idea工程push到gitlab后,jenkins自动创建docker image,拉取image创建container然后start工程。
流程如图
步骤:
1. 安装docker
1.1
yum install -y docker
1.2
本机打jar包,工程pom文件添加下面插件,然后mvn的clear加pacakge打包完毕
注意打包时候停掉正在运行的工程,不然clear不成功
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring‐boot‐maven‐plugin</artifactId>
</plugin>
</plugins>
</build>
1.3
xshell rz上传jar包到服务器,在jar包所在目录创建 Dockerfile,文件内容如下
FROM java:8
ENV ARTIFACTID jar包名称
ENV ARTIFACTVERSION 1.0‐SNAPSHOT
ENV HOME_PATH /home
WORKDIR $HOME_PATH
ADD /$ARTIFACTID‐$ARTIFACTVERSION.jar $HOME_PATH/$ARTIFACTID.jar
ENTRYPOINT ["java", "‐jar", "xc‐govern‐center.jar"]
注意第一行from java8,是用jdk1.8,centos7自带jre1.8和1.7,没有jdk,需要额外装,不然以后执行不成功
具体卸载linux自带jre并重装jdk,能搜到很多教程。
1.4 在刚才Dockerfile文件所在目录,依次创建image container 最后docker ps查看容器,docker start 容器名 启动程序
1.5 可以用maven提供的docker-maven-plugin插件实现上述从打包到创建image到创建container过程
需要编写pom_docker.xml,节约篇幅可以搜的到,置于pom.xml平级目录
在pom_docker.xml文件所在目录,执行
mvn ‐f pom_docker.xml clean package ‐DskipTests docker:build
mvn是maven命令,需要额外安装maven,可以搜到教程,装好后记得修改/etc/profile export JAVA—HOME和MAVEN-HOME
别忘了立即生效profile。JAVAHOME有问题的话也会报错。