linux下集成jenkins gitlab 持续集成步骤和一些问题(一)

Target: idea工程push到gitlab后,jenkins自动创建docker image,拉取image创建container然后start工程。

流程如图

linux下集成jenkins gitlab 持续集成步骤和一些问题(一)

步骤:

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有问题的话也会报错。