上传文件至 /
commit
b5bc63839e
|
@ -0,0 +1,43 @@
|
|||
######################################################################
|
||||
# Build Tools
|
||||
|
||||
.gradle
|
||||
/build/
|
||||
!gradle/wrapper/gradle-wrapper.jar
|
||||
|
||||
target/
|
||||
!.mvn/wrapper/maven-wrapper.jar
|
||||
|
||||
######################################################################
|
||||
# IDE
|
||||
|
||||
### STS ###
|
||||
.apt_generated
|
||||
.classpath
|
||||
.factorypath
|
||||
.project
|
||||
.settings
|
||||
.springBeans
|
||||
|
||||
### IntelliJ IDEA ###
|
||||
.idea
|
||||
*.iws
|
||||
*.iml
|
||||
*.ipr
|
||||
|
||||
### NetBeans ###
|
||||
nbproject/private/
|
||||
build/*
|
||||
nbbuild/
|
||||
dist/
|
||||
nbdist/
|
||||
.nb-gradle/
|
||||
|
||||
######################################################################
|
||||
# Others
|
||||
*.log
|
||||
*.xml.versionsBackup
|
||||
|
||||
!*/build/*.java
|
||||
!*/build/*.html
|
||||
!*/build/*.xml
|
|
@ -0,0 +1,43 @@
|
|||
variables:
|
||||
MAVEN_CLI_OPTS: "-s $CI_PROJECT_DIR/.m2/settings.xml --batch-mode"
|
||||
MAVEN_OPTS: "-Dmaven.repo.local=$CI_PROJECT_DIR/.m2/repository"
|
||||
MAVEN_USER_HOME: "$CI_PROJECT_DIR/.m2"
|
||||
REGISTRY_MIRROR: docker.repository.zcunsoft.com
|
||||
|
||||
stages:
|
||||
- build
|
||||
- package
|
||||
|
||||
.set-docker-tag: &set-docker-tag
|
||||
- if [[ $CI_BUILD_REF_NAME == "main" ]];
|
||||
then
|
||||
export DOCKER_TAG=latest;
|
||||
else
|
||||
export DOCKER_TAG="${CI_BUILD_REF_NAME}";
|
||||
fi
|
||||
|
||||
maven-build:
|
||||
image: openjdk:8-slim
|
||||
stage: build
|
||||
cache:
|
||||
key: maven-cache
|
||||
paths:
|
||||
- .m2/repository/
|
||||
- .m2/wrapper/
|
||||
script:
|
||||
- ./mvnw $MAVEN_CLI_OPTS package
|
||||
artifacts:
|
||||
name: "$CI_PROJECT_NAME-$CI_COMMIT_REF_NAME"
|
||||
paths:
|
||||
- "ruoyi-admin/target/*.jar"
|
||||
|
||||
docker-build:
|
||||
image:
|
||||
name: gcr.io/kaniko-project/executor:debug
|
||||
entrypoint: [""]
|
||||
stage: package
|
||||
script:
|
||||
- *set-docker-tag
|
||||
- mkdir -p /kaniko/.docker
|
||||
- echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"gitlab-ci-token\",\"password\":\"$CI_JOB_TOKEN\"}}}" > /kaniko/.docker/config.json
|
||||
- /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --build-arg JAR_FILE="$(ls ruoyi-admin/target/*.jar | sort | head -n 1)" --destination $CI_REGISTRY_IMAGE:$DOCKER_TAG --cache=true --registry-mirror=$REGISTRY_MIRROR
|
|
@ -0,0 +1,37 @@
|
|||
# First stage - Compiling application
|
||||
FROM registry.cn-hangzhou.aliyuncs.com/acs/maven:3-jdk-8 AS build-env
|
||||
|
||||
ENV MY_HOME=/app
|
||||
RUN mkdir -p $MY_HOME
|
||||
WORKDIR $MY_HOME
|
||||
ADD pom.xml $MY_HOME
|
||||
|
||||
# add source
|
||||
ADD . $MY_HOME
|
||||
|
||||
# 下载maven缓存包并解压
|
||||
RUN ["wget","-O","/home/cache.tar.gz","http://192.168.48.1:18800/cache/maven?name=repository"]
|
||||
RUN ["tar", "-zxvf", "/home/cache.tar.gz","-C","/home"]
|
||||
# get all the downloads out of the way
|
||||
#RUN ["/usr/local/bin/mvn-entrypoint.sh","mvn","verify","clean","--fail-never"]
|
||||
|
||||
# run maven verify
|
||||
RUN ["/usr/local/bin/mvn-entrypoint.sh","mvn","verify","--settings=/home/app/settings.xml" ]
|
||||
|
||||
# 打包maven缓存包并上传到服务器
|
||||
WORKDIR /home
|
||||
RUN ["tar", "-zcvf", "cache.tar.gz", "app"]
|
||||
RUN ["curl","-F","file=@/home/cache.tar.gz","http://192.168.48.1:18800/cache/maven?name=repository"]
|
||||
WORKDIR $MY_HOME
|
||||
|
||||
# Second stage - build image
|
||||
FROM openjdk:8-jre-alpine
|
||||
|
||||
COPY --from=build-env /app/ruoyi-admin/target/*.jar /app.jar
|
||||
|
||||
ENV JAVA_OPTS=""
|
||||
ENV SERVER_PORT 8082
|
||||
|
||||
EXPOSE ${SERVER_PORT}
|
||||
|
||||
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/urandom -jar /app.jar" ]
|
|
@ -0,0 +1,20 @@
|
|||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2018 RuoYi
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@ -0,0 +1,5 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -Djava.awt.headless=true -jar /app.jar "$@"
|
Loading…
Reference in New Issue