jenkins本服务器构建docker测试项目

搭建和用户就不说了,从创建配置开始

第一步:首先新建一个item

第二步:正式配置信息

 

 

附录:说一下脚本的内容

#操作/项目路径(Dockerfile存放的路劲)
BASE_PATH=/data/xxcy-service/xxcy-base
#版本存放地址
BASE_PATH_LOG=/data/xxcy-service/xxcy-base-log
# 源jar路径
SOURCE_PATH=/var/lib/jenkins/workspace
#docker 镜像/容器名字或者jar名字 这里都命名为这个
DEV=-dev
SERVER_NAME_BUSINE=xxcy-busine
#具体存放位置
SERVER_NAME_PATH=xxcy-busine/xxcybase
#容器id
CID_BUSINE=$(docker ps | grep "$SERVER_NAME_BUSINE$DEV" | awk '{print $1}')
#镜像id
IID_BUSINE=$(docker images | grep "$SERVER_NAME_BUSINE$DEV" | awk '{print $3}')
#时间 
DATE=`date +%Y%m%d%H%M`
 
# 备份
function backup(){
    
    if [ -f "$BASE_PATH/$SERVER_NAME_BUSINE/$SERVER_NAME_BUSINE.jar" ]; then
        echo "$SERVER_NAME_BUSINE.jar 备份..."
            cp $BASE_PATH/$SERVER_NAME_BUSINE/$SERVER_NAME_BUSINE.jar $BASE_PATH_LOG/$SERVER_NAME_BUSINE-$DATE.jar
        echo "备份 $SERVER_NAME_BUSINE.jar 完成"
    else
        echo "$BASE_PATH/$SERVER_NAME_BUSINE/$SERVER_NAME_BUSINE.jar不存在,跳过备份"
    fi
    
}

# 最新构建代码 移动到项目环境
function transfer(){
    echo "最新构建代码 $SOURCE_PATH/$SERVER_NAME_PATH/ jar 迁移至 $BASE_PATH ...."
       cp $SOURCE_PATH/$SERVER_NAME_PATH/$SERVER_NAME_BUSINE/target/$SERVER_NAME_BUSINE.jar $BASE_PATH/$SERVER_NAME_BUSINE 
        
}
 
# 构建docker镜像
function build(){
    if [ -n "$IID_BUSINE" ]; then
        echo "存在$SERVER_NAME_BUSINE镜像,IID_BUSINE=$IID_BUSINE"
    else
        echo "不存在$SERVER_NAME_BUSINE镜像,开始构建镜像"
            cd $BASE_PATH/$SERVER_NAME_BUSINE
        docker build -t $SERVER_NAME_BUSINE$DEV .
    fi
}
 
# 运行docker容器
function run(){
    backup
    transfer
    build
    
    if [ -n "$CID_BUSINE" ]; then
        echo "存在$SERVER_NAME_BUSINE容器,CID_BUSINE=$CID_BUSINE,重启docker容器 ..."
            docker restart $SERVER_NAME_BUSINE$DEV 
        echo "$SERVER_NAME容器重启完成"
    else
        echo "不存在$SERVER_NAME_BUSINE容器,docker run创建容器..."
            docker run --name $SERVER_NAME_BUSINE$DEV -m 1g -v $BASE_PATH/$SERVER_NAME_BUSINE:$BASE_PATH/$SERVER_NAME_BUSINE -d -p 8630:8630 $SERVER_NAME_BUSINE$DEV
        echo "$SERVER_NAME_BUSINE容器创建完成"
    fi
    
}
 
#入口
run  
附录二:上一个dockerFile


#基于openjdk:8
FROM openjdk:8

# 指定当前操作目录
WORKDIR /data/xxcy-service/xxcy-base/xxcy-busine
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone

#容器启动后执行的操作

CMD java -jar xxcy-busine.jar
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值