Gitlab本地部署

  • Gitlab简介
  • Gitlab安装
  • 准备工作
  • 辅助软件安装(可不做)
  • 安装gitlab的依赖项和服务器设置
  • 通过安装包安装Gitlab
  • 通过Yum安装Gitlab
  • 如果安装时出现gpgkey验证错误,只需在安装时明确指明不进行gpgkey验证
  • 安装完毕
  • 常用命令
  • Gitlab使用
  • 管理员账号初始化
  • 设置SSH
  • 附录
  • policycoreutils-python is needed by问题
  • gitlab-ctl reconfigure后卡在了“ ruby_block[wait for redis service socket]”


Gitlab简介

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。

Gitlab安装

准备工作

辅助软件安装(可不做)

安装wget:
yum install -y wget
升级所有的包
yum update -y
安装vim:
yum install -y vim

安装gitlab的依赖项和服务器设置

依赖项安装:
yum install -y curl openssh-server openssh-clients postfix cronie policycoreutils-python
启动postfix,并设置为开机启动:
systemctl start postfix
systemctl enable postfix
设置防火墙:
firewall-cmd --add-service=http --permanent
firewall-cmd --reload
开放端口(用于gitlab的port):
firewall-cmd --zone=public --add-port=5672/tcp --permanent(开放5672端口)
firewall-cmd --reload # 配置立即生效

通过安装包安装Gitlab

首先,通过进入网站 https://mirrors.tuna.tsinghua.edu.cn/ 选择合适的版本,点击下载,或者使用命令:wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-14.6.0-ce.0.el7.x86_64.rpm
注意: Centos7使用el7; Centos8使用el8。否则版本不对,无法安装。
之后,安装gitlab使用命令:
yum -install -y YourGitlab.rpm
推荐先去镜像网站直接下载到本地,然后传到服务器,再进行安装,这样不容易出现因下载的包不全出现安装失败的问题。

通过Yum安装Gitlab

yum makecache # 注:这一步会创建大量的数据
yum install -y gitlab-ce # 直接安装最新版
yum install -y gitlab-ce-13.6.1 # 如果要安装指定的版本,在后面填上版本号即可

如果安装时出现gpgkey验证错误,只需在安装时明确指明不进行gpgkey验证

yum install gitlab-ce -y --nogpgcheck

安装完毕

gitlab本地服务配置文件 gitlab本地部署_gitlab本地服务配置文件

常用命令

gitlab-ctl start # 启动所有 gitlab 组件
gitlab-ctl stop # 停止所有 gitlab 组件
gitlab-ctl restart # 重启所有 gitlab 组件
gitlab-ctl status # 查看服务状态
gitlab-ctl reconfigure # 启动服务
gitlab-ctl show-config # 验证配置文件
gitlab-ctl tail # 查看日志
gitlab-rake gitlab:check SANITIZE=true --trace # 检查gitlab
vim /etc/gitlab/gitlab.rb # 修改默认的配置文件

Gitlab使用

管理员账号初始化

cd /opt/gitlab/bin
gitlab-rails console # 进入控制台界面
等待一会,输入命令:
u=User.where(id:1).first # 来查找与切换账号
u.password=‘12345678’ # 设置密码为12345678(这里的密码看自己喜欢)
u.password_confirmation=‘12345678’ # 再次确认密码
u.save! # 进行保存(注意不要忘记后面的!)

设置SSH

如果配置过git,可直接跳到执行查看公钥命令。

检查SSH秘钥是否存在

右击git bash,打开终端后执行命令 :

cat ~/.ssh/id_rsa.pub

gitlab本地服务配置文件 gitlab本地部署_python_02


若密钥不存在,则生成SSH密钥

在git终端执行命令:

ssh-keygen -t rsa -C “xiaoqin@example.com”

"xiaoqin@example.com"是邮箱地址,随你喜欢。执行完之后,会在C:\Users\YourUserName.ssh文件夹下生成两个文件:

私钥 id_rsa.

公钥 id_rsa.pub

gitlab本地服务配置文件 gitlab本地部署_python_03


在GitLab上添加SSH key

执行命令,查看公钥:

cat ~/.ssh/id_rsa.pub

gitlab本地服务配置文件 gitlab本地部署_python_04


复制红色方框的SSH公钥,在个人偏好设置里,点击SSH密钥,粘贴到下图的红色方框出,添加密钥,完毕。

gitlab本地服务配置文件 gitlab本地部署_centos_05

附录

policycoreutils-python is needed by问题

执行命令
yum install policycoreutils-python

gitlab-ctl reconfigure后卡在了“ ruby_block[wait for redis service socket]”

gitlab本地服务配置文件 gitlab本地部署_gitlab本地服务配置文件_06


执行命令:

systemctl restart gitlab-runsvdir

如果不行,卸载gitlab,然后重新安装gitlab,配置gitlab.rb,先运行systemctl restart gitlab-runsvdir,再运行gitlab-ctl reconfigure