jenkins将项目部署远程服务器并用docker启动服务

jenkins和docker不叙述,直接上配置

第一步:先将远程服务器配置进jenkins

 

 

到这里就配置完成了,多个服务就配置多个

第二步:配置项目

 

因为我选择的是脚本执行,就把脚本放远程服务i了,我附录一下脚本内容

这是线上文件夹下的内容

 

附录执行脚本:

#操作/项目路径(Dockerfile存放的路劲)
BASE_PATH=/xxcy-service/xxcy-base
#版本存放地址
BASE_PATH_LOG=/xxcy-service/xxcy-base-log
#固定名字区分
PRO=-pro
#docker 镜像/容器名字或者jar名字 这里都命名为这个
SERVER_NAME_BUSINE=xxcy-busine
#容器id
CID_BUSINE=$(docker ps | grep "$SERVER_NAME_BUSINE$PRO" | awk '{print $1}')
#镜像id
IID_BUSINE=$(docker images | grep "$SERVER_NAME_BUSINE$PRO" | awk '{print $3}')
#时间 
DATE=`date +%Y%m%d%H%M`

# 构建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$PRO .
        fi
}

# 运行docker容器
function run(){
        build
        if [ -n "$CID_BUSINE" ]; then
                echo "存在$SERVER_NAME_BUSINE容器,CID_BUSINE=$CID_BUSINE,重启docker容器 ..."
                        docker restart $SERVER_NAME_BUSINE$PRO
                echo "$SERVER_NAME容器重启完成"
        else
                echo "不存在$SERVER_NAME_BUSINE容器,docker run创建容器..."
                        docker run --name $SERVER_NAME_BUSINE$PRO -m 1g -v $BASE_PATH/$SERVER_NAME_BUSINE:$BASE_PATH/$SERVER_NAME_BUSINE -v /data/logs:/data/logs  -d -p 8730:8730 $SERVER_NAME_BUSINE$PRO
                echo "$SERVER_NAME_BUSINE容器创建完成"
        fi
}

#入口
run
附录二:dockerfile脚本

#基于openjdk:8
FROM openjdk:8

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

#容器启动后执行的操作

CMD ["java", "-Xmx2048m", "-jar", "xxcy-busine.jar"]
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值