需要发布的项目pom配置
-
build下增加
<defaultGoal>compile</defaultGoal>
例如
<build>
<defaultGoal>compile</defaultGoal>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
-
添加docker打包插件,删除原有docker-maven-plugin
<plugin>
<groupId>com.spotify</groupId>
<artifactId>dockerfile-maven-plugin</artifactId>
<version>1.3.6</version>
<configuration>
<repository>live-web/${project.artifactId}</repository>
<buildArgs>
<JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
</buildArgs>
</configuration>
</plugin>
需要发布的项目Dockerfile模板
放在需要发布的项目根目录下,命名为Dockerfile,jar包名称可不用修改,全部使用app即可,注意dev环境端口规划
FROM openjdk:8-jdk-alpine
ARG JAR_FILE
ADD ${JAR_FILE} app.jar
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
EXPOSE 8081
ENTRYPOINT ["java","-jar","/app.jar"]
jenkins点击对应流水线,点击Build with Parameters,选择发布项目,配置暴露端口,点击构建即可
docker基础操作指令
docker ps #查看正在运行的容器
docker ps -a #查看所有容器
docker logs -f $CONTAINER ID #查看对应容器日志