如何在jenkins的execute shell中使用credentials进行docker登录?

如何在jenkins的execute shell中使用credentials进行docker登录

在Jenkins中,可以使用Credentials插件来管理Docker Hub的认证信息。

使用 Credentials Binding Plugin插件 可以将 Jenkins 的 Credentials 绑定到环境变量中,这样你就可以在 Execute Shell 步骤中使用这些变量。以下是详细的步骤:

1. 添加一个docker的credentials

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Treat username as secret
勾选这个选项在日志打印时会同时隐藏用户名,打印出***

2. 安装 Credentials Binding Plugin

在这里插入图片描述

确保你的 Jenkins 已经安装了 Credentials Binding Plugin。如果没有安装,可以按照以下步骤安装:

  1. 进入 Jenkins 管理界面。
  2. 点击 Manage Jenkins -> Manage Plugins
  3. Available 选项卡中搜索 Credentials Binding Plugin
  4. 选中并安装该插件。

3. 配置 Jenkins 任务使用 Credentials Binding

在这里插入图片描述

  1. 在 Jenkins 任务配置中绑定 Credentials
    • 打开你的 Jenkins 任务,点击 Configure 进入配置页面。
    • 在页面中找到 Build Environment 部分,并勾选 Use secret text(s) or file(s)Use secret text(s) or file(s) in builds
    • 点击 Add,选择 Username and password (separated)
    • Username VariablePassword Variable 中分别填写你想要的环境变量名称,比如 DOCKER_LOGIN_USERDOCKER_LOGIN_PWD
    • Credentials 下拉列表中,选择你预先创建的 aliyun-registry-account(或其他) Credentials ID。

4. 在 Execute Shell 中使用这些变量

现在你可以在 Execute Shell 中使用这些被注入的环境变量:

# 使用环境变量来登录 Docker Registry
docker login registry.cn-hangzhou.aliyuncs.com -u "$DOCKER_LOGIN_USER" -p "$DOCKER_LOGIN_PWD"

# 构建 Docker 镜像
docker build -t registry.cn-hangzhou.aliyuncs.com/your-repo/your-image-name:latest .

# 推送 Docker 镜像到阿里云镜像中心
docker push registry.cn-hangzhou.aliyuncs.com/your-repo/your-image-name:latest

总结

通过使用 Credentials Binding Plugin,你可以将 Jenkins 的 Credentials 安全地注入到环境变量中,并在 Execute Shell 中使用这些变量来进行 Docker 登录和其他操作。这种方法既能保证安全性,又能避免在脚本中暴露敏感信息。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值