【Jenkins】 上传docker包并推送到远程仓库
1. 前置工作
安装和配置Jenkins
在开始使用Jenkins之前,需要确保已经安装和配置了Jenkins服务器。您可以按照以下步骤进行安装和配置:
- 下载Jenkins并安装:根据您的操作系统,在Jenkins官方网站上下载适合您系统的Jenkins安装包,并按照安装指南进行安装。
- 启动Jenkins服务器:安装完成后,启动Jenkins服务器并访问Jenkins的Web界面。
- 配置插件:根据您的需求安装和配置Jenkins插件,例如Pipeline插件、Docker插件等。
设置Docker环境
在Jenkins服务器上设置Docker环境是非常重要的,以便Jenkins能够与Docker引擎进行交互。以下是设置Docker环境的一般步骤:
- 安装Docker引擎:在Jenkins服务器上安装Docker引擎,可以参考Docker官方文档获取安装步骤。
- 配置Docker用户权限:确保Jenkins用户具有执行Docker命令的权限,通常是将Jenkins用户添加到docker用户组。
- 启动Docker服务:启动Docker服务以便Jenkins可以与Docker引擎通信。
2. 相关配置流程
创建项目
- 点击左侧菜单中的新建任务。
- 输入项目名称,选择自由风格的软件项目,然后点击“OK”。
配置参数
-
使用参数化构建过程
-
编辑执行脚本
# 镜像名称
img_name=test-service
# 镜像仓库地址
resp=resp.test.com/$img_name
chmod 777 $WORKSPACE
# 上传的tar.gz文件
echo "开始解压Docker镜像"
gzip -df $WORKSPACE/$img_name-docker.tar.gz
echo "结束解压Docker镜像"
# 加载Docker镜像
echo "开始加载Docker镜像:$img_name"
loaded_image=$(docker load -i $WORKSPACE/$img_name-docker.tar | awk '{print $3}')
# 重新标记镜像
docker tag $loaded_image $resp
# 时间戳
curr_time=$(date "+%m%d%H%M%S")
new_img=$resp:$curr_time
# 为镜像添加新的标签
docker tag $resp $new_img
# 推送镜像到远程仓库
echo "开始推送镜像:$new_img"
docker push $new_img
echo "结束推送镜像:$new_img"
在这个示例中,会将通过jenkins参数化上传的docker镜像文件直接解压加载到docker中,
注意这里加载使用的是 load
对应的文件是 通过 docker save
方式加载的文件
这里举例如何快速识别是通过什么方式导出的docker文件
最后通过构建上传文件,实现通过Jenkins上传docker文件并提送到远程仓库
原文地址:https://blog.csdn.net/qq_42320804/article/details/143467977
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!