跳转至

快速创建流水线

本节将通过编译、构建、部署来创建流水线,通过详细的步骤操作描述,帮助您快速创建一条流水线。

前提条件

  • 需创建一个工作空间和一个用户,该用户需加入该工作空间并赋予 workspace edit 角色。 参考创建工作空间用户和角色
  • 创建可以访问镜像仓库、集群的两个凭证,分别命名为: registrykubeconfig 。 创建凭证的更多信息,请参考凭证管理
  • 准备一个 GitHub 仓库、DockerHub 仓库。

创建凭证

  1. 凭证 页面创建两个凭证:

    • docker-credential:用户名和密码,用于访问镜像仓库。
    • demo-dev-kubeconfig:用于使用这个 kubeconfig 访问 Kubernetes 集群。
  2. 创建完成后,可以在 凭证列表 页面看到凭证信息。

创建自定义流水线

  1. 在流水线列表页点击 创建流水线

    pipeline

  2. 在弹出的对话框中,选择 自定义创建流水线 ,点击 确定

    pipeline

  3. 进入 自定义创建流水页面 ,输入流水线名称,选择一个分组

    pipeline

    • 构建设置:
      • 删除过期流水线记录:删除之前的构建记录,以节省 Jenkins 使用的磁盘空间。
      • 构建记录保留期限:最多保留几天的构建记录,默认值为 7 天,即七天前的构建记录将被删除。
      • 构建记录最大数量:最多保留几条构建记录,默认值为 10, 即最多保留 10 条记录。超过 10 条记录时,时间最早的记录最先被删除。 保留期限最大数量 这两条规则同时生效,只要满足其中之一就会开始删除记录。
      • 不允许并发构建:开启后,一次只能执行一个流水线构建任务
    • 构建参数:
      • registry:镜像仓库地址。示例值: release.daocloud.io
      • project:镜像仓库中的项目名称。示例值: demo
      • name:镜像的名称。示例值: http-hello
    • 构建触发器:
      • 代码源触发:开启后,系统会根据 定时仓库扫描计划 定期扫描仓库代码中用于构建流水线的特定分支,如果有更新内容,则重新运行流水线。
      • Webhook 触发:复制默认的 Webhook 地址,让外部系统通过 Webhook 触发运行当前流水线
      • 定时触发:定时触发构建流水线,无论代码仓库是否有更新,都会在规定时间重新运行流水线。
      • 定时扫描仓库:输入 CRON 表达式定义扫描仓库的时间周期。输入表达式后下方会提示当前表达式的含义 。有关详细的表达式语法规则,可参考 Cron 时间表语法
  4. 添加完成后,点击 确定

编辑流水线

  1. 在流水线列表页面点击一个流水线的名称。

    pipelisetting

  2. 在右上角点击 编辑流水线

    pipelisetting

  3. 在右上角点击 Agent 设置

    pipelisetting

  4. 类型设为 node,且 label 设为 go,点击 确定

    pipelisetting

  5. 添加阶段 - 拉取源代码。

    • 点击画布中的 添加阶段 。在右侧的阶段设置中设置名称:git clone。
    • 点击 添加步骤 ,在弹出对话框中步骤类型下选择 git clone,配置相关参数:
      • 仓库 URL:输入 GitLab 仓库地址。
      • 分支:不填写默认为 master 分支。
      • 凭证:如果属于私有仓库,则需要提供一个凭证。

    quickstart01

  6. 添加阶段 - 构建并推送镜像。

    • 点击画布中的 添加阶段 。在右侧的阶段设置中设置名称:build & push。

    • 在步骤模块中选择开启 指定容器 ,在弹出的对话框中填写容器名称:go,然后点击 确定

      container

    • 在步骤模块中选择开启 使用凭证 ,在弹出的对话框中填写相关参数,然后点击 确定

      • 凭证:选择创建的 Docker hub 凭证,用户访问镜像仓库。
      • 密码变量:PASS
      • 用户名变量:USER

      quickstart02

    • 点击 添加步骤 进行代码构建,在弹出的对话框中步骤类型下选择 shell,参并在命令行中输入以下命令,然后点击 确定

      go build -o simple-http-server main.go
      
    • 点击 添加步骤 以根据源码中的 Dockerfile 构建 Docker 镜像,在弹出的对话框中步骤类型下选择 shell,参并在命令行中输入以下命令,然后点击 确定

      docker build -f Dockerfile . -t $registry/$project/$name:latest
      
    • 点击 添加步骤 以登录镜像仓库,在弹出的对话框中步骤类型下选择 shell,参并在命令行中输入以下命令,然后点击 确定

      docker login $registry -u $USER -p $PASS
      
    • 点击 添加步骤 将镜像推送至镜像仓库中,在弹出的对话框中步骤类型下选择 shell,参并在命令行中输入以下命令,然后点击 确定

      docker push $registry/$project/$name:latest
      
  7. 添加阶段 - 部署至集群

    • 点击画布中的 添加阶段 。在右侧的阶段设置中设置名称:deploy。

    • 在步骤模块中选择开启 指定容器 ,在弹出的对话框中填写容器名称:go,然后点击 确定

      container2

    • 在步骤模块中选择开启 使用凭证 ,在弹出的对话框中填写相关参数,然后点击 确定

      • 凭证:选择 kubeconfig 类型的凭证。

      • kubeconfig 变量:如果您使用的是 kubectl apply 的部署方式,变量值必须为 KUBECONFIG。

      quickstart03

    • 点击 添加步骤 以进行集群部署操作,在弹出的对话框中步骤类型下选择 shell,参并在命令行中输入以下命令,然后点击 确定

      kubectl apply -f deploy.yaml
      

保存并执行流水线流水线

  1. 完成上一步后点击 保存并执行

    quickstart05

  2. 在弹出的对话框中输入步骤二中的示例参数。点击 确定 即可成功运行该流水线。

    build-para

评论