Jenkins实现自作自定义镜像并推送Harbor并编写目标服务器准备脚本

发布时间:2024年01月15日

在这里插入图片描述

Jerkin 制作自定义镜像推送到Harbor

在这里插入图片描述

docker build -t mytest:$tag .
docker login -u admin -p Harbor12345 178.119.30.133:80
docker tag mytest:$tag 178.119.30.133:80/repo/mytest:$tag
docker push 178.119.30.133:80/repo/mytest:$tag

在这里插入图片描述

编写部署脚本

部署项目需要通过Publish Over SSH插件,让目标服务器执行命令。为了方便一次性实现拉取镜像和启动的命令,推荐采用脚本文件的方式。

添加脚本文件到目标服务器,再通过Publish Over SSH插件让目标服务器执行脚本即可。

在这里插入图片描述

deploy.sh

harbor_addr=$1
harbor_repo=$2
project=$3
version=$4
port=$5

imageName=$harbor_addr/$harbor_repo/$project:$version

echo $imageName

containerId=`docker ps -a|grep $project|awk '{print $1}' `

echo  $containerId

if [ "containerId" != "" ];then
   docker stop $containerId
   docker rm $containerId
fi

tag=`docker images|grep $project| awk '{print $2}'`

echo $tag

if [[ "$tag" =~  "$version" ]] ; then
   docker rmi -f  $imageName
fi

docker login -u admin -p Harbor12345 $harbor_addr

docker pull $imageName

docker run -d -p $port:$port --name $project $imageName

echo "Success"

[root@178-119-30-133 ~]# ./deploy.sh 178.119.30.133:80 repo mytest v3.0.0 8081

在这里插入图片描述

文章来源:https://blog.csdn.net/tangsiqi130/article/details/135591417
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。