暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Jenkins 自动化部署教程

小贤笔记 2021-08-30
318

凭据

凭据可以用来存储需要密文保护的数据库密码、Gitlab密码信息、Docker私有仓库密码等,以便 Jenkins可以和这些第三方的应用进行交互

插件: Credentials Binding Plugin

位置: Jenkins > 凭据 > 系统 > 全局凭据 (unrestricted) > 添加凭据在后面的工程配置中会用到这个

可添加的凭证类型有五种 (任选其一, 以 GitHub 为例):

    • 用户名: GitHub 登录账号
    • 密码:  GitHub 登录密码
    • Repository URL: 项目 HTTPS 地址
  1. Username with password :GitHub 用户名和密码

    • 使用 root 用户生成公钥和私钥: ssh-keygen
    • 私钥文件: vim /root/.ssh/id_rsa
    • 公钥文件: vim /root/.ssh/id_rsa.pub
    • 把公钥内容拷贝到 GitHub 中:Settings - SSH and GPG keys - New SSH key
    • 在 Jenkins 添加一个新的凭证,类型为 “SSH Username with private key”,把私钥文件内容复制过来
    • 步骤:
    • Repository URL: 项目 SSL 地址
    1. SSH Username with private key :使用SSH用户和密钥

    1. Secret file :需要保密的文本文件,使用时Jenkins会将文件复制到一个临时目录中,再将文件路径设置到一个变量中,等构建结束后,所复制的Secret file就会被删除。

    1. Secret text :需要保存的一个加密的文本串,如钉钉机器人或Github的api token

    1. Certificate :通过上传证书文件的方式

    系统配置

    系统管理 > 系统配置

    • 配置 Publish Over SSH

      • 插件: Publish Over SSH
      • 填写服务器信息, 点击"Test Configuration"后出现"Success"即为成功
    • 配置环境变量

      • 查询
    echo $PATH

    • 添加 在"全局属性"中勾选"环境变量", 把内容复制过去即可
    • 点击"保存"

    工程配置

    • 新建一个任务
    • 源码管理 把前面配置的凭据和对应的URL添加进去即可
    • 构建
      • 执行 shell: 填写对应的 shell 命令即可, 这里不做详述
    • 保存
    • 至此配置完成, 点击"立即构建"试试效果~

    自动部署

    如果想要 git pull
    时 Jenkins 就会自动部署, 那就继续往下看

    • 进入"用户列表", 点击用户名, 进入用户设置界面
    • 找到"API Token", 点击"添加新 Token"
    • 复制生成的 Token
    • 进入"工程配置", 找到"构建触发器", 勾选"触发远程构建 (例如,使用脚本)", 将 Token 粘贴至输入框
    • 进入你的 GitHub 项目, Settings > Webhooks > Add webhook
    • 配置安全策略
      • 勾选"匿名用户具有可读权限"
      • 保存
    • 完成


    文章转载自小贤笔记,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

    评论