Jenkins及Gitlab安装集成 Git Extensions 一

GitLab是由GitLabInc.开发,使用MIT许可证的基于网络的Git仓库管理工具,且具有wiki和issue跟踪功能。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。GitLab由乌克兰程序员DmitriyZaporozhets和ValerySizov开发,它使用Ruby语言写成。后来,一些部分用Go语言重写。2013年7月,产品被拆分为:GitLabCE(社区版)和GitLabEE(企业版),当时,GitLabCE和GitLabEE的许可仍然是根据MIT许可分发的免费和开源软件。截止2018年5月,该公司约有290名团队成员,以及2000多名开源贡献者。GitLab被IBM,Sony,NASA,Alibaba,Invincea,O’ReillyMedia,Leibniz-Rechenzentrum(LRZ),CERN,SpaceX等组织使用。

环境
CentOS 7
Docker

安装GitLab

参考Gitlab的官方安装文档:https://docs.gitlab.com/omnibus/docker/

# docker pull gitlab/gitlab-ce

在 firewalld 开启的状态下run容器,不然会出现以下错误:

docker: Error response from daemon: driver failed programming external connectivity on endpoint gitlab (3fed4f9108cf49ecd38e93a9d7692ba6ee66d4ba4d5b8d4c455766b30753a621):  (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 9443 -j DNAT --to-destination 172.17.0.2:443 ! -i docker0: iptables: No chain/target/match by that name.

运行容器:

# docker run --detach --hostname gitlab.example.com --publish 9443:443 --publish 9082:80 --name gitlab --restart always  -v $HOME/gitlab/config:/etc/gitlab  -v $HOME/gitlab/logs:/var/log/gitlab -v $HOME/gitlab/data:/var/opt/gitlab  gitlab/gitlab-ce

此时访问http://192.168.159.129:9082 如果出现502错误
在这里插入图片描述
点击 Go back 。
一般是服务器性能不够、内存太小。
端口占用。

正常会进入登录页面
创建密码
在这里插入图片描述
默认用户名:root

密码最少8个字符

如果看不习惯英文还可以设置语言:点击头像–》setting–》Preferences–》Lanuage
在这里插入图片描述

为了与Jenkins连接我们需要一个API Token。默认是没有的我们自己生成一个。
在这里插入图片描述
点击 create token.
在这里插入图片描述
跟Jenkins连接还需要Gitlab的Global config(全局配置);
如果找不到的话在新建项目时会有显示。
在这里插入图片描述

Git 全局设置
git config --global user.name "Administrator"
git config --global user.email "[email protected]"

第三个所需的信息为Gitlab在Docker内网的IP。
Docker容器的默认网络模式下容器只能以内网地址访问另一个容器。

可以用:

# docker inspect gitlab

查看容器内网地址
在这里插入图片描述
现在我们Gitlab与Jenkins连接的三个信息都有了。
API Token
Git Global config
Gitlab 的 docker IP

安装Jenkins

Jenkins是一款基于Java开发的开源 CI&CD(持续集成&持续部署) 软件,用于自动化各种任务、监控持续重复的工作,包括构建、测试和部署软件。Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。Jenkins 是一个扩展性非常强的软件,其功能主要通过插件来扩展。

安装步骤及命令参考Jenkins官方文档:https://jenkins.io/zh/doc/book/installing/

用Docker安装Jenkins也要开着firewalld。

# docker pull jenkinsci/blueocean

创建容器

docker run -u root --rm -d -p 9081:8080 -p 50000:50000 -v $HOME/jenkins:/var/jenkins_home jenkinsci/blueocean

配置Jenkins

从客户端游览器访问Jenkins。

在这里插入图片描述
Jenkins默认管理员密码在
在这里插入图片描述

登录之后会让你选择安装Plugin。此时先选择跳过吧。
在这里插入图片描述
创建一个账户
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

配置Jenkins与Gitlab的连接

需要Git plugin 和 Gitlab plugin 插件。
需要在安装Gitlab时的三个信息:API Token、Git Global config、Docker IP

配置Gitlab plugin

如果在available里搜索不到那应该是已经安装了。
在这里插入图片描述
在这里插入图片描述
出现 Success 即安装成功。

首先配置Gitlab
在这里插入图片描述
在这里插入图片描述
测试成功之后 先点击 Apply 再点击 Save 。
在这里插入图片描述

配置Git plugin的Global config

在这里插入图片描述

Gitlab新建项目增加成员和配置SSH密钥

在这里插入图片描述
打开Git Extensions 主面板
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

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

在这里插入图片描述
远程档案库里可以设置密钥、推送协议等
在这里插入图片描述
在这里插入图片描述
这个错误应该是因为服务端没配置域名导致的。
在这里插入图片描述

发布了48 篇原创文章 · 获赞 8 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/wangxudongx/article/details/96725277