介绍

继上一篇博客「Gitee篇」如何用Git平台账号登录建木CI发布后,得到了很多小伙伴们的关注,我趁热打铁推出了如何用Git平台账号登录建木CI 系列的第二篇 「GitLab篇」如何用Git平台账号登录建木CI,有别于上一篇,此篇博客介绍了如何用GitLab平台账号登录建木CI。

自v2.5.3版本开始,建木CI可以使用GitLab账号进行登录了,这篇文章给大伙讲讲如何配置、使用GitLab登录建木CI。

环境搭建

GitLab支持私有化部署,我们可以搭建一个GitLab平台来测试登录建木CI

使用Docker来搭建GitLab平台,方便快捷,执行以下命令运行一个GitLab实例:

docker run -d \--name gitlab_test \--restart always \-p 443:443 \-p 80:80 \-p 222:22 \-v /home/gitlab/config:/etc/gitlab \-v /home/gitlab/logs:/var/log/gitlab \-v /home/gitlab/data:/var/opt/gitlab \gitlab/gitlab-ce

在网页上访问刚刚搭建的GitLab,用户名为root,初始密码访问容器内的路径:/etc/gitlab/initial_root_password

成功登录:

配置介绍

GitLab提供的认证基本流程按照OAuth2协议进行,建木CI依照此流程来整合第三方平台的登录。

同时建木CI登录使用jwt来实现

首先介绍一下如果想要使用Git平台账号登录建木CI需要哪些配置,此处以GitLab为例:

jianmu:api:# 设置jwt签名使用的密钥jwtSecret: xxxxxxxxxxxx# 设置jwt的过期时间,单位毫秒jwtExpirationMs: 86400000oauth2:# 是否允许用户注册并登录,某些情况下可能只需要团队的特定一部分人登录到CI平台,当这部分人注册并登录完毕后,可将此配置配置为falseallow-registration: true# 指定GitLab平台gitlab:# 表示相应类型,此处的值固定为"code"response-type: code# 表示请求类型,此处的值固定为"authorization_code"grant-type: authorization_code# 请求token时使用的urltoken-url: http://ip:port/oauth/token# 获取授权code时使用的urlcode-url: http://ip:port/oauth/authorize# 调用api登录时使用的urlapi_url: http://ip:port/api/v4/# 第三方应用Client ID,详情请参照平台规范client-id: xxxxxxxxxx# 第三方应用Client Secret,详情请参照平台规范client-secret: xxxxxxxxxx# 用户授权的范围,此处配置为api即可scope: api

简要介绍一下在GitLab平台上如何创建第三方应用

1.登录GitLab平台,点击右上角偏好设置

2.点击左上方的应用,开始创建第三方应用

3.填写必要的信息

4.点击保存应用

5.获取到必需的Client ID,Client Secret

效果演示

  1. 如图配置好Git平台账号登录建木CI配置文件

  1. 启动项目并访问

启动成功之后,要求我们使用GitLab来登录

  1. 点击图标登录

进入GitLab的授权页面,并同意授权

页面跳回建木CI,看到正在登录

稍等片刻,登录成功

官⽹:https://jianmu.dev
代码:https://gitee.com/jianmu-dev
文档:https://docs.jianmu.dev
示例:https://ci.jianmu.dev

「GitLab篇」如何用Git平台账号登录建木CI相关推荐

  1. 「Gitea篇」如何用Git平台账号登录建木CI

    介绍 这是<如何用Git平台账号登录建木CI>系列文章的第三篇,建木CI立志整合所有第三方Git平台来登录建木CI!此篇我们将整合Gitea平台来登录建木CI. ‍自v2.5.4版本开始, ...

  2. 「Gitee篇」如何用Git平台账号登录建木CI

    介绍 自v2.5.2版本开始,建木CI可以使用Git平台的账号进行登录了,这篇文章我们以Gitee为例,给大伙讲讲如何配置,使用第三方的Git平台登录建木CI 配置介绍 自v2.5.2版本开始,建木C ...

  3. canvas换图时候会闪烁_基于Canvas实现的高斯模糊(上)「JS篇」

    作者:iNahoo 转发链接:https://mp.weixin.qq.com/s/5TxPjznpEBku_ybSMBdnfw 目录 基于Canvas实现的高斯模糊(上)「JS篇」本篇 基于Canv ...

  4. python对excel某一列去重-「总结篇」Python中所有的Excel操作技巧

    原标题:「总结篇」Python中所有的Excel操作技巧 Python对于Excel的操作是多种多样的,掌握了相关用法就可以随心所欲的操作数据了! 操作xls文件 xlrd(读操作): import ...

  5. php switch 函数,PHP丨PHP基础知识之条件语SWITCH判断「理论篇」

    Switch在一些计算机语言中是保留字,其作用大多情况下是进行判断选择.以PHP来说,switch(开关语句)常和case break default一起使用 典型结构 switch($control ...

  6. 「实战篇」开源项目docker化运维部署-后端java部署(七)

    原创文章,欢迎转载.转载请注明:转载自IT人故事会,谢谢! 原文链接地址:「实战篇」开源项目docker化运维部署-后端java部署(七) 本节主要说说后端的部署需要注意的点,本身renren-fas ...

  7. dreamweaver 正则表达式为属性值加上双引号_「前端篇」不再为正则烦恼

    作者:李一二 转发链接:https://mp.weixin.qq.com/s/PmzEbyFQ8FynIlXuUL0H-g 前言 有不少朋友都为写正则而头疼,不过笔者早已不为正则而烦恼了.本文分享一些 ...

  8. lgg8配置_LG G8 ThinQ 评测「上手篇」:真小屏旗舰

    原标题:LG G8 ThinQ 评测「上手篇」:真小屏旗舰 --- "你买的是什么手机 ?" --- "买了个 G8 !" --- "什么??&quo ...

  9. 我的理想600字作文计算机方面,我的理想600字作文「8篇」

    我的理想600字作文「8篇」 理想是一个深渊,从跳下那一刻起,就逼迫你奋力搏击.今天,yuwenmi小编为您带来我的理想600字作文,欢迎阅读! 我的理想600字作文[1] 在我心中,埋藏着一个理想, ...

最新文章

  1. redmine 贴图操作
  2. metasploit 一款开源的渗透测试框架
  3. JS 作用域与变量提升---JS 学习笔记(三)
  4. tableau可视化数据分析60讲(二十一)-tableau预测及趋势线
  5. Django之session验证的三种姿势
  6. 【效率】微软开源最强Python自动化神器!不用写一行代码!
  7. 简单实现几种常见的前端效果,附代码!
  8. 关于@@IDENTITY、SCOPE_IDENTITY ()、IDENT_CURRENT ('tableName')
  9. Python序列化的使用(有少量修改)
  10. Java注释 link_Java 文档注释
  11. 你认识什么是前端吗?你是合格的前端吗?
  12. c语言写死循环程序,通过简单的例子看c程序死循环
  13. win10键盘鼠标怎么使用?(键盘操纵鼠标)
  14. python语言就业方向_Python语言十大就业方向!老男孩教育
  15. 小米12S和红米K50至尊版哪个好
  16. Neo4j导入本地CSV文件三元组关系生成图谱
  17. Spring实战(第四版)
  18. 【ChatGPT】| 最全七大场景50+小场景应用指南合集——内部指导版本(AI训练师必备,带案例)
  19. 简单研究Unity中的万向锁和欧拉角以及四元数
  20. ubuntu找不到命令 add-apt-repository command not found

热门文章

  1. oracle中的存储过程是什么,oracle存储过程是什么?
  2. AcWing 2048. 干草
  3. hadoop 结合zookeeper 高可用 优化新特性
  4. 电脑插上U盘,无线鼠标无法使用问题解决
  5. 一招教你自制“切屏”摸鱼神器
  6. Python爬虫神器pyppeteer,对 js 加密降维打击
  7. Latex 图片/表格位置不正确
  8. 集束搜索(beam search)和贪心搜索(greedy search)
  9. 回顾《网易数据基础平台建设》
  10. 路由器和交换机有什么区别