查看版本号
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
gitlab-rake gitlab:env:info
1. 安装和配置必须的依赖项
apt update
apt-get upgrade
apt-get install curl openssh-server ca-certificates postfix
如果这一步遇到下面提示界面,请按Tab切换到“确定”按钮,然后回车即可。
2、安装命令:
- 安装文件网址:https://packages.gitlab.com/gitlab/gitlab-ce
- 下载GitLab文件
wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/ubuntu/focal/gitlab-ce_14.10.2-ce.0_amd64.deb/download.deb
- 安装GitLab
dpkg -i gitlab-ce_14.10.2-ce.0_amd64.deb
- 如果运行dpkg报openssh-server相关的错误,请先执行下面三个命令:
没有出错的这步跳过这步
apt --fix-broken install
apt-get update
apt-get upgrade
-
运行完sudo dpkg安装命令后如果出现下面的界面则gitlab安装成功了!
-
修改GitLab网页ip和端口号
vim /etc/gitlab/gitlab.rb
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
- 启动/停止GitLab
# 1、停止gitlab服务
gitlab-ctl stop
# 2、启动gitlab服务
gitlab-ctl reconfigure
# 3、重启所有gitlab组件
gitlab-ctl restart
# 4、启动所有gitlab组件
gitlab-ctl start
# 5、启用开机自启动
systemctl enable gitlab-runsvdir.service
# 6、查看服务状态
gitlab-ctl status
3、设置root的密码
查看root密码
cat /etc/gitlab/initial_root_password
修改root密码
- 执行以下命令进入 GitLab Rails Console:
sudo gitlab-rails console
- 在 GitLab Rails Console 中执行以下命令修改 root 用户密码:
user = User.find_by_username('root')
user.password = 'Ahomeit26'
user.password_confirmation = 'Ahomeit26'
user.save!
- 执行以下命令退出 GitLab Rails Console:
exit
4、其他命令
- 查看版本命令
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
gitlab-rake gitlab:env:info
- 修改GitLab服务器时区
- 修改/etc/gitlab/gitlab.rb文件
vim /etc/gitlab/gitlab.rb
-
将代码
gitlab_rails['time_zone'] = 'UTC'
修改为gitlab_rails[‘time_zone’] = ‘Beijing’
-
修改完后,保存退出。
-
配置并启动GitLab
gitlab-ctl reconfigure
gitlab-ctl restart
gitlab-ctl status
5、GitLab备份恢复
1)备份gitlab
教程网址:https://blog.csdn.net/qq_41588098/article/details/125598435
备份命令:
gitlab-rake gitlab:backup:create
备份之后备份文件所在位置:/var/opt/gitlab/backups
2)恢复gitlab备份
- 教程网址:https://blog.csdn.net/weixin_53150440/article/details/127695438
- 先停服务,因为这两个服务可能会破坏gitlab里的一些东西,就像冷备份mysql数据库一样,需要数据库停掉,同一个意思。
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
- 执行恢复gitlab仓库 BACKUP要大写
恢复gitlab备份命令
gitlab-rake gitlab:backup:restore BACKUP=1667504495_2022_11_03_15.5.2
gitlab-rake gitlab:backup:restore BACKUP=
-
继续,正在移除表,ctrl+c终止 不用管,报错是数据库的报错,不重要
-
看看状态返回码是不是0,如果是0就说明没问题。
echo $?
- 由于停了两个服务,把它开启
gitlab-ctl start sidekiq
gitlab-ctl status unicorn
3)还原备份后修改项目报500错误
- 进入gitlab内置的数据库
gitlab-rails dbconsole --database main
将token进行删除
UPDATE projects SET runners_token = null, runners_token_encrypted = null;
UPDATE namespaces SET runners_token = null, runners_token_encrypted = null;
UPDATE application_settings SET runners_registration_token_encrypted = null;
刷新页面,500错误消失,修改成功
4)gitlab备份迁移后修改项目报500错误
gitlab通过备份迁移后,在修改或是删除项目时,报500错误,原因是迁移前后的token不一致导致的
解决办法:需要进入gitlab内置的数据库,将所有的token清除掉
进入gitlab内置的数据库:适用于gitlab的14.8.2-ee版本,其他版本的命令可能会不一致
gitlab-rails dbconsole --database main
执行以下命令,将token进行删除:
UPDATE projects SET runners_token = null, runners_token_encrypted = null;
UPDATE namespaces SET runners_token = null, runners_token_encrypted = null;
UPDATE application_settings SET runners_registration_token_encrypted = null;
6、升级GitLab数据库
查看数据库状态
gitlab-rake db:migrate:status
升级数据库
gitlab-rake db:migrate
7、6、卸载GitLab
1)停止gitlab
gitlab-ctl stop
2)卸载gitlab(注意这里写的是gitlab-ce)
rpm -e gitlab-ce
3)查看gitlab进程
ps aux | grep gitlab
4)杀掉第一个进程(就是带有好多…的进程),杀掉后,在ps aux | grep gitlab确认一遍,还有没有gitlab的进程。若还存在,可以把它的主要组件的进程也杀一边。
5)删除所有包含gitlab文件
find / -name gitlab xargs rm -rf
6)当然若你没有全杀权限。那么可以可以把这三个目录给干掉也可以:
rm -rf /opt/gitlab
rm -rf /etc/gitlab
rm -rf /var/log/gitlab