Dockerfile 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. # todo: dockerfile 考虑自动生成
  2. FROM maven:3.6.1 AS compile_stage
  3. ENV PROJECT_NAME app
  4. # 项目所在的工作目录
  5. ENV WORK_PATH /opt/$PROJECT_NAME
  6. # 项目所在的git分支
  7. ENV GIT_BRANCH internal-paas
  8. ENV GIT_URL http://gogs.seec.seecoder.cn/FanYanPeng/SEEC-Gitlab.git
  9. # 跳转到工作目录
  10. WORKDIR $WORK_PATH
  11. RUN git clone --branch $GIT_BRANCH $GIT_URL .
  12. RUN mkdir /root/.m2 && cp settings.xml /root/.m2/settings.xml
  13. # 多线程下载依赖,只要pom文件不改变,依赖不会重复下载
  14. RUN mvn clean install -DskipTests -DfinalName=$PROJECT_NAME
  15. COPY . .
  16. # ---
  17. # 默认情况下,前面的步骤都会被缓存下来
  18. # 多线程下载依赖,只要pom文件不改变,依赖不会重复下载
  19. RUN mvn clean install -DskipTests -DfinalName=$PROJECT_NAME
  20. FROM seecjdk/adoptzh-jre
  21. ENV PROJECT_NAME app
  22. ENV WORK_PATH /opt/$PROJECT_NAME
  23. ENV MODELE_NAME seecoder-gitlab-server
  24. WORKDIR /app
  25. COPY --from=compile_stage $WORK_PATH/$MODELE_NAME/target/$PROJECT_NAME.jar .
  26. CMD ["sh", "-c", "java -Xdebug -Xrunjdwp:transport=dt_socket,address=8888,server=y,suspend=n -jar -server /app/$PROJECT_NAME.jar"]