阿里云开源镜像站:https://developer.aliyun.com/mirror/?utm_content=g_1000303593springboot+docker+jenkins自动部署项目,jenkins、mysql、redis都是docker运行的,没有使用虚拟机,就在阿里云服务器(centos7)正在运行1.先不说前期准备2.在项目根目录下新建一个Dockerfile。Dockerfile文件内容为:#基础音乐FROMopenjdk:12#AuthorMAINTAINERdemoVOLUME/tmp#指定配置文件,jar包在服务器上的路径ENTRYPOINT["java","-Dspring.profiles.active=prod","-jar","/lcy/work/tools/tools.jar"]#exposedportEXPOSE80923.在服务器上找一个目录新建.sh文件#!/bin/shecho'=================================================================================================================='#镜像名称IMAGE_NAME='registry.cn-beijing.aliyuncs.com/???/tools'#Jenkins打包后的地址SOURCE_PATH='/lcy/jenkins/workspace/tools'#Dockerfile执行jar包地址BASE_PATH='/lcy/work/tools'echoIMAGE_NAME=$IMAGE_NAMEecho'=================复制JAR包===================='echo$SOURCE_PATH/target/tools-0.0.1-SNAPSHOT.jarcp$SOURCE_PATH/target/tools-0.0.1-SNAPSHOT.jar$BASE_PATH/tools.jarchmod-R777$BASE_PATH/tools.jarecho'=================复制完成=============================='echo'=================当前docker版本=============='docker-vecho'================================================'dockerbuild-t$IMAGE_NAME-f$SOURCE_PATH/Dockerfile.echo'================构建镜像结束=================='#输入要推送的镜像地址,根据镜像仓库提示的地址复制echo'=================push镜像启动================='dockerlogin--username=???--密码=???registry-vpc.cn-beijing.aliyuncs.comdockerpush$IMAGE_NAMEecho'===================================================================================================================================='echo'==================获取容器id===================='CID=$(dockerps|grep"$IMAGE_NAME"|awk'{print$1}')echocontainerid=$CIDecho'=================获取图片id=================='IID=$(dockerimages|grep"$IMAGE_NAME"|awk'{print$3}')echoimageid=$IIDif[-n"$CID"];然后echo$IMAGE_NAME容器存在,停止容器并删除dockerstoptoolsdockerrmtoolselseecho$IMAGE_NAME容器不存在,启动dockerrun-p8092:8092-d--nametools-v$BASE_PATH:$BASE_PATH$IMAGE_NAMEfi4、配置jenkins,执行新建的.sh文件(记得给权限)其他配置就不说了,比如github配置5、运行结果