FROM openjdk:17-jdk AS spring-boot-builder
COPY target/baackend-0.0.1-SNAPSHOT.jar /app/baackend-0.0.1-SNAPSHOT.jar
FROM alpine:latest
RUN apk add --no-cache openjdk17-jre wget
COPY backend/src/main/resources/minioFile /app/minioFile
COPY backend/src/main/resources/minio /app/minio
COPY backend/src/main/resources/minio.exe /app/minio.exe
EXPOSE 9090
CMD ["sh", "-c", "/app/minio.exe server /app/minioFile & java -jar /app/baackend-0.0.1-SNAPSHOT.jar"]
pipeline {
agent any
environment {
IMAGE_NAME = 'springboot-image'
IMAGE_TAG = '1.1'
DOCKERFILE_PATH = 'dockerfile'
DOCKER_BUILD_CONTEXT = 'backend'
DOCKER_CREDS = credentials('dockerhub_credentials')
}
stages {
stage('Build Docker Image') {
steps {
script {
dir('backend') {
bat "mvn clean install -DskipTests"}
// bat "docker rmi ${IMAGE_NAME}:${IMAGE_TAG}"
bat "docker build -t tlz970370568/${IMAGE_NAME}:${IMAGE_TAG} ."
// 登录到Docker Hub(如果需要)
bat "docker login --username ${DOCKER_CREDS_USR} --password ${DOCKER_CREDS_PSW}"
// 推送镜像到Docker Hub(如果需要)
bat "docker push tlz970370568/${IMAGE_NAME}:${IMAGE_TAG}"
}
}
}
}
post {
always {
cleanWs()
}
}
}