GitLab 搭建使用整理 超详细

1.GitLab 环境搭建

GitLab,是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目安装。
它拥有与GitHub类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。
团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

2.搭建需要环境

yum install -y postfix sshd policycoreutils-python

postfix 邮件通知
sshd ssh服务(一般系统已经有了,可以不装)
policycoreutils-python GitLab必备依赖
设置postfix开机自启: chkconfig --add postfix
没有 wget 的 可以 装下
yum install -y wget

3.下载所需的rpm包

GitLab下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce
选择呢对应的版本进行下载 我选择的是这个 (我的系统是 centos8)
在这里插入图片描述

4.安装修改 配置文件

上传自己下载好的 rpm 包
上传位置自己看着办吧
在这里插入图片描述
现在就可以执行

rpm -ivh gitlab-ce-12.10.9-ce.0.el8.x86_64.rpm 

在这里插入图片描述
如果安装有问题 一般就是缺少依赖 ,看缺哪个自己安装下
一般 少这个 policycoreutils-python 的多
执行 :yum install policycoreutils-python
再次执行上面的命令安装 gitlab

5.修改下gitlab 的配置文件

执行:

vim /etc/gitlab/gitlab.rb

在这里插入图片描述
修改后 :wq 保存退出
执行:gitlab-ctl reconfigure
再执行:gitlab-ctl restart
至此 GitLab 已经启动

标题6.Gitlab 的相关操作和说明

/etc/gitlab/gitlab.rb          #gitlab配置文件
/opt/gitlab                    #gitlab的程序安装目录
/var/opt/gitlab                #gitlab目录数据目录
/var/opt/gitlab/git-data       #存放仓库数据
gitlab-ctl start #启动所有gitlab组件;
gitlab-ctl stop #停止所有gitlab组件; 
gitlab-ctl stop nginx          #单独停止某个服务

gitlab-ctl restart #重启所有gitlab组件; 
gitlab-ctl status #查看服务状态; 
gitlab-ctl reconfigure #修改配置文件之后,重新加载gitlab配置文件并启动所有gitlab组件
gitlab-rake gitlab:check SANITIZE=true --trace #检查gitlab; 
gitlab-ctl tail #查看日志;
gitlab-ctl --help #查看gitlab命令的帮助
Gitlab的服务构成:
nginx:                 静态web服务器
gitlab-workhorse        轻量级反向代理服务器
logrotate              日志文件管理工具
postgresql             数据库
redis                  缓存数据库
sidekiq                用于在后台执行队列任务(异步执行)

7.前台页面进入

首次进入是需要设置密码 ,我已经修改过了所以是这个样子。
在这里插入图片描述剩下的就是自己去研究了。

8.Gitlab使用中遇到的问题整理

生成秘钥信息
在.ssh 目录下右键打开Git Bash(.ssh目录不存在,则在任一目录下操作,或者手动创建该目录)
在这里插入图片描述

生成秘钥:
ssh-keygen -t rsa -C "your_email@youremail.com"
直接Enter就行,然后会提示输入密码(可输可不输)
   说明:命令中的email,就是gitlab中的账号,需要保持一致
在这里插入图片描述

执行完成之后,在.ssh 目录下就会生成秘钥文件(没有.ssh目录的会自动生成,手动创建的则不会重复生成)
在这里插入图片描述

服务器生成 SSH 密钥
  生成ssh-key,默认一路回车即可

ssh-keygen

在这里插入图片描述

在~/.ssh/下会生成两个文件,id_rsa和id_rsa.pub
  id_rsa是私钥
  id_rsa.pub是公钥
  gitlab添加秘钥
  访问登录GitLab, 登录进去后, 搜索ssh, 或ss 就会有提示 设置—> ssh密钥. 点击进入ssh密钥添加页面. 把id_rsa.pub中的信息输入到key输入框中,title可以随便起,见名知意即可。然后点击Add Keys即可

问题:

Enter passphrase for key ‘/Users/MYNAME/.ssh/id_rsa’。
说好的ssh不需要密码呢??
翻了一些教程,有的说干脆重新设置为无密码,这样就不需要每次都输入了,个人觉得这是个办法,不是最优解。下面把我最后的解法贴下来,这个方法的原理就是托管一个代理替你保存密码,我的系统是centos7.6:
1、先打开代理,如果你已经打开,那么直接运行命令2即可:
eval $(ssh-agent)
#2、输入下面命令,然后再次输入密码即可,大功告成
ssh-add ~/.ssh/id_rsa
至此,我们就可以轻松地提交代码了。

GitLab配合小乌龟配置SSH Key

1.首先我们看一个错误页面,当自己没有配置sshkey的时候,pull或者push代码会有如下的界面。
在这里插入图片描述

上面这段话的大体意思是在本机中没有找到相应的安全凭证,需要你做一些选择……我们点击取消操作,看看如何解决这个问题。
2.配置SSH Key
SSH的原理我们就不多说了,这里使用的是rsa的非对称的加密算法,验证的机制就是我们本机会生成一对公钥私钥,私钥自己保存,公钥放在gitLab上面。
首先在TortoiseGit的安装目录下的bin文件夹中找到puttygen.exe这个工具,或者在开始菜单搜索这个程序(如果你没有选择安装目录的话默认路径应该是:C:\ProgramFiles\TortoiseGit\bin),这个工具是用来生成密钥对的,打开它点击Generate,然后鼠标在进度条下方不停的晃动,几秒后就会生成密钥对,点击Savaprivate key保存私钥到本地(输入一个名字,保存到一个你找的到的文件夹),我一般放在C盘下。不要关闭这个窗口,接下来还会用到。
2

打开GitLab,找到Profile settings(右上角)下的SSH keys选项,选择Add SSH Key,Title输入框里输入一个名称(随便写,或者不写自动生成一个),然后把上面生成的以ssh-rsa开头的一长串密钥复制到Key输入框,点击Add Key保存。

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

到这里SSH Key就配置成功了,刚才生成密钥对的窗口可以关闭了。
3.在本地项目中配置SSH Key
在项目的文件夹上右击鼠标,选择TortoiseGit—Settings—Remot,
因为我用的是汉化版本,所有文字介绍略有差异,在PuttyKey后选择刚才保存到本地的私钥,然后点击应用。
在这里插入图片描述

设置SSH客户端,选择Network选项,在下面的SSH Client选项中选择TortoiseGit的安装目录下bin文件夹中的TortoiseGitPlink.exe程序,如果已经默认选中,直接确定就可以了。
在这里插入图片描述

在Pull或Push项目的时候,记得勾选AutoloadPutty Key选项。
在这里插入图片描述

到这里,GitLab配置SSH Key就已经全部完成了。

  • 1
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
GitLab是一个开源的版本控制系统,提供了强大的代码托管和协作管理功能。虽然GitLab主要用于软件开发,但它也可以用来搭建博客。 搭建GitLab博客的步骤如下: 1. 安装GitLab:首先,需要在服务器上安装GitLab软件,可以根据具体的操作系统选择相应的安装方式。 2. 创建用户和项目:安装完成后,可以通过Web界面登录GitLab,创建博客所需的用户和项目。可以选择创建一个单独的项目作为博客仓库。 3. 编写博客:在项目中创建一个Markdown文件,用于编写博客内容。GitLab支持Markdown语法,可以方便地编辑和排版文本。 4. 提交和推送:完成博客内容的编写后,将文件提交到GitLab仓库中,并将代码推送到服务器上。 5. 配置域名和访问:在服务器上配置域名解析,并设置GitLab的域名指向服务器的IP地址。然后,就可以通过浏览器访问GitLab博客了。 6. 自定义主题:通过GitLab提供的自定义功能,可以对博客进行个性化主题的设置。可以选择现有的主题样式,或者自定义CSS文件来定制博客的外观。 7. 文章管理和发布:在博客中添加新的文章时,只需在对应的项目中创建Markdown文件并提交到仓库中即可。可以使用GitLab提供的分支和合并功能来管理不同版本的文章,并实现发布和修改的控制。 总之,通过搭建GitLab博客,可以享受到版本控制和协作管理带来的便利性,实现博客内容的编写、发布和管理。同时,GitLab还提供了许多其他功能,如评论、订阅和搜索等,可以进一步丰富和优化博客的功能和用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值