一、操作系统使用Ubuntu22.04版本
1、安装系统(设置-关于-软件-设置阿里云源)
2、修改root密码并启用root的ssh登录(安装vim,openssh-server)
编辑 vim /etc/ssh/sshd_config 修改 PermitRootLogin yes
重新启动 SSH 服务:systemctl restart ssh
二、安装gitlab-ce(以16.10.0为例)
1、查看版本代号lsb_release -c
2、https://packages.gitlab.com/gitlab/gitlab-ce 搜索适合的版本deb下载
3、使用命令安装:dpkg -i download.deb
4、修改配置文件并启动:
配置启动路径:如“http://192.168.1.12:8080”
external_url 'http://your-domain.com'
配置邮件发送服务
gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.server.com" gitlab_rails['smtp_port'] = 587 gitlab_rails['smtp_user_name'] = "smtp_username" gitlab_rails['gitlab_email_from'] = 'smtp_username' gitlab_rails['smtp_password'] = "smtp_password" gitlab_rails['smtp_domain'] = "smtp.server.com" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_tls'] = false
配置备份路径和参与
gitlab_rails['manage_backup_path'] = true gitlab_rails['backup_path'] = "/var/opt/gitlab/backups" gitlab_rails['backup_archive_permissions'] = 0644 gitlab_rails['backup_keep_time'] = 604800 #配置数据保存位置 git_data_dirs({ "default" => { "path" => "/var/opt/gitlab/git-data" } })
更新配置启动服务:
gitlab-ctl reconfigure
如再次更改配置文件,需要重启服务:gitlab-ctl restart
5.修改超级管理员密码
超管默认用户root,初始密码:cat /etc/gitlab/initial_root_password
root超管修改密码:
gitlab-rails console -e production 进入控制台后
user = User.where(id: 1).first
user.password = '123456'
user.password_confirmation = '123456'
user.save!
quit
6.使用配置的url访问使用 http://192.168.1.12:8080
7.安装runner
(1)下载安装包安装
curl -LJO https://gitlab-runner-downloads.s3.amazonaws.com/latest/deb/gitlab-runner_amd64.deb dpkg -i gitlab-runner_amd64.deb
(2)或使用命令安装
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh | sudo bash apt-get install gitlab-ci-multi-runner
(3)gitlab-runner 注册
创建runner:设置 -> CI/CD -> Runners
注意,如果此处报500错误可以进入命令行执行下面命令再试
gitlab-rails console > ApplicationSetting.first.delete > ApplicationSetting.first => nill gitlab-ctl reconfigure
使用命令注册gitlab-runner:
gitlab-runner register #参考上图完成参数填写即可完成
三、使用gitlab-ce
1、设置中文语言:设置-偏好设置-本地化
2、设置仓库默认分支main为master:设置-仓库-默认分支
四、备份、恢复、升级
1、备份:
使用命令gitlab-rake gitlab:backup:create,会在配置文件里的备份目录生成压缩包,建议搞成定时任务如“0 1 * * * /usr/bin/gitlab-rake gitlab:backup:create”
2、恢复备份:
(1)停止数据服务/设置权限
gitlab-ctl stop unicorn gitlab-ctl stop sidekiq chmod 777 /var/opt/gitlab/backups/*.tar
(2)恢复备份:gitlab-rake gitlab:backup:restore BACKUP=/var/opt/gitlab/backups/<backup_file>
注意<backup_file>不能填写全名称,只能填写数字部分,不然无法识别文件:gitlab-rake gitlab:backup:restore BACKUP=172xxx824_2024_01_01_16.10.0
(3)重启服务:gitlab-ctl restart或者
gitlab-ctl start unicorn gitlab-ctl start sidekiq
3、gitlab升级
(1)确保gitlab服务正常,备份配置文件(gitlab.rb,gitlab-secrets.json,trusted-certs)
(2)gitlab-rake gitlab:backup:create #备份数据
(3)下载新版gitlab的deb包安装(使用官方工具选择升级版本:https://gitlab-com.gitlab.io/support/toolbox/upgrade-path/),不建议使用官方推荐的命令安装
使用命令安装:dpkg -i download.deb 安装完成见下图
安装成功后重新加载配置并启动
gitlab-ctl reconfigure
gitlab-ctl restart
升级过程中遇到的问题:gitlab备份迁移后,新gitlab部分页面报500错误
问题:在将旧gitlab服务器上的数据备份迁移到新服务器后(参照:Gitlab数据备份、迁移、恢复),有部分页面访问包500错误。经验证新服务器在恢复备份数据前,页面均访问正常,问题出现在备份恢复上。
分析:在网上查找资料发现,这是由于db_key_base问题导致的。因为gitlab默认的备份机制,是不会备份gitlab.rb和gitlab-secrets.json文件的。在备份恢复过程有如下警告提示:
解决办法:
方法一、在旧gitlab配置文件未删除的情况下,拷贝gitlab-secrets.json文件到新服务器替换,重启gitlab。
方法二、若旧gitlab配置已删除,可执行以下两组命令重置相关CI的所有密钥和token。
命令1:
#gitlab-rails console
#Ci::Runner.all.update_all(token_encrypted: nil)
执行完命令后,重启gitlab服务
命令2:
#gitlab-rails dbconsole
#gitlabhq_production=> UPDATE projects SET runners_token = null, runners_token_encrypted = null;
#gitlabhq_production=> UPDATE namespaces SET runners_token = null, runners_token_encrypted = null;
#gitlabhq_production=> UPDATE application_settings SET runners_registration_token_encrypted = null;
执行完命令后,重启gitlab服务
- 本文固定链接: http://ttfde.top/index.php/post/442.html
- 转载请注明: admin 于 TTF的家园 发表
《本文》有 0 条评论