¶镜像构建脚本 build-image-web.sh 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152#!/bin/bashif [ "${BUILD_DIR}" == "" ];then echo "env 'BUILD_DIR' is not set" exit 1fiDOCKER_DIR=${BUILD_DIR}/${JOB_NAME}if [ ! -d ${DOCKER_DIR} ];then mkdir -p ${DOCKER_DIR}fiecho "docker workspace: ${DOCKER_DIR}"JENKINS_DIR=${WORKSPACE}/${MODULE}echo "jenkins workspace: ${JENKINS_DIR}"PROJECT_DIR=${JENKINS_DIR}${JOB_NAME}-webecho "project workspace: ${PROJECT_DIR}"if [ ! -f ${PROJECT_DIR}/target/*.jar ];then echo "target jar file not found ${PROJECT_DIR}/target/*.jar" exit 1ficd ${DOCKER_DIR}rm -fr *.jar DockerfileDOCKER_FILE=/opt/script/Dockerfilecp ${PROJECT_DIR}/target/*.jar .cp ${DOCKER_FILE} .sed -i "s,{{JOB_NAME}},${JOB_NAME},g" DockerfileVERSION=$(date +%Y%m%d%H%M%S)IMAGE_NAME=harbor.merchant.com/kubernetes/${JOB_NAME}:${VERSION}echo "${IMAGE_NAME}" > ${WORKSPACE}/IMAGEecho "building image: ${IMAGE_NAME}"docker build -t ${IMAGE_NAME} .docker push ${IMAGE_NAME}helm list -n defaulthelm upgrade ${JOB_NAME} --set name=${JOB_NAME} --set version=$VERSION --set httpPorts=8080 -n default /opt/charts/ ¶Dockerfile 123456789101112131415FROM openjdk:11ENV LANG en_US.UTF-8ENV LANGUAGE en_US:enENV LC_ALL en_US.UTF-8ENV TZ=Asia/ShanghaiENV apollo.meta http://192.168.3.183:8080ENV APOLLO_LABEL XianDevLabelWORKDIR /EXPOSE 8080ADD {{JOB_NAME}}.jar /{{JOB_NAME}}.jarCMD ["java","-Dapollo.label=XianDevLabel","-Djava.security.egd=file:/dev/./urandom","-jar","{{JOB_NAME}}.jar"]