Centos安装、迁移gitlab

ops/2024/9/23 11:21:12/

Centos安装迁移gitlab

  • 一、下载安装
  • 二、配置rb修改,起服务。
  • 三、访问web,个人偏好设置。
  • 四、数据迁移
    • 1、查看当前GitLab版本
    • 2、备份旧服务器的文件
    • 3、将上述备份文件拷贝到新服务器同一目录下,恢复GitLab
    • 4、停止新gitlab数据连接服务
    • 5、恢复备份文件到GitLab
    • 6、启动GitLab,验证

一、下载安装

##安装依赖
yum -y install policycoreutils openssh-server openssh-clients postfix policycoreutils-python##命令下载安装
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bashyum install gitlab-ce##手动下载安装
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-17.1.1-ce.0.el7.x86_64.rpmrpm -ivh gitlab-ce-17.1.1-ce.0.el7.x86_64.rpm 

在这里插入图片描述

二、配置rb修改,起服务。

[root@zentao-test gitlab]# systemctl status postfix
[root@zentao-test gitlab]# systemctl enable postfix[root@zentao-test gitlab]# firewall-cmd --add-service=ssh --permanent
[root@zentao-test gitlab]# firewall-cmd --add-service=http --permanent[root@zentao-test gitlab]# firewall-cmd --reload[root@zentao-test gitlab]#  vim /etc/gitlab/gitlab.rb
external_url  'http://gitlab.test.com'##配置邮箱通知,qq邮箱为例
##[qq邮箱如何获取授权码](https://blog.csdn.net/qq_44637753/article/details/126717153)
# gitlab_rails['gitlab_email_from'] = '1349***626@qq.com'
# gitlab_rails['gitlab_email_display_name'] = 'Gitlab'   
# gitlab_rails['gitlab_email_reply_to'] = '1349***626@qq.com'  
# gitlab_rails['smtp_enable'] = true
# gitlab_rails['smtp_address'] = "smtp.qq.com"   ##smtp.163.com
# gitlab_rails['smtp_port'] = 465
# gitlab_rails['smtp_user_name'] = "1349***626@qq.com"
# gitlab_rails['smtp_password'] = "qq授权码"
# gitlab_rails['smtp_domain'] = "smtp.qq.com"
# gitlab_rails['smtp_authentication'] = "login"
# gitlab_rails['smtp_enable_starttls_auto'] = false
# gitlab_rails['smtp_tls'] = true
# gitlab_rails['smtp_pool'] = false
#unicorn['worker_processes'] = 2   ##14注释
postgresql['max_worker_processes'] = 4
nginx['listen_port'] = 9099
nginx['worker_processes'] = 2##如果需要https,自制ssl证书后
#nginx['enable'] = true
#nginx['client_max_body_size'] = '2048m'
#nginx['redirect_http_to_https'] = true           #取消#号 更改注释并为true
#nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.test.com.crt"     #更改路径
#nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.test.com.key"     #更改路径##重新加载配置,启动gitlab
[root@zentao-test gitlab]#   gitlab-ctl reconfigure
##运行在ruby_block[wait for logrotate service socket] action run卡住情况下
##新开终端运行下列命令,不终止
/opt/gitlab/embedded/bin/runsvdir-star
##邮箱测试
[root@zentao-test gitlab]#  gitlab-rails console
> Notify.test_email('1349***626@qq.com','test Gitlab Email','Test').deliver_now

邮件发送成功
在这里插入图片描述
在这里插入图片描述

三、访问web,个人偏好设置。

##防火墙放通
[root@zentao-test gitlab]# firewall-cmd --add-port=9099/tcp --permanent
success
[root@zentao-test gitlab]# firewall-cmd --reload[root@zentao-test gitlab]# cat /etc/gitlab/initial_root_password 
Password: RN5rmZUR2JHOUWHWS4DfBx0H+IZPGoN7dFSPWKS60kw=

##nginx监听端口:9099访问:ip:9099
##个人偏好设置,中文
在这里插入图片描述

四、数据迁移

注:GitLab不能跨版本升级。

1、查看当前GitLab版本


[root@zentao-old gitlab]#  cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

2、备份旧服务器的文件

##默认备份文件在 /var/opt/gitlab/backups/
[root@zentao-old backups]#   gitlab-rake gitlab:backup:create##手动备份/etc/gitlab目录以下两个文件到迁移服务器目录下
gitlab-secrets.json  主
gitlab.rb  次

在这里插入图片描述

3、将上述备份文件拷贝到新服务器同一目录下,恢复GitLab

## 将备份文件权限修改为777,避免出现权限不够的问题
[root@zentao-new backups]#  scp -r 192.168.10.146:/var/opt/gitlab/backups/1721897692_2024_07_25_13.12.15_gitlab_backup.tar /var/opt/gitlab/backups/[root@zentao-new backups]#  chmod 777 1721897692_2024_07_25_13.12.15_gitlab_backup.tar

gitlab_125">4、停止新gitlab数据连接服务

[root@zentao-new gitlab]#  gitlab-ctl stop unicorn
[root@zentao-new gitlab]#  gitlab-ctl stop sidekiq

5、恢复备份文件到GitLab

##备份文件编号省略_gitlab_backup.tar
##gitlab-rake gitlab:backup:restore BACKUP=备份文件编号[root@zentao-new gitlab]#  gitlab-rake gitlab:backup:restore BACKUP=1721897692_2024_07_25_13.12.15

在这里插入图片描述

6、启动GitLab,验证

[root@zentao-new gitlab]#  gitlab-ctl start[root@zentao-new gitlab]# gitlab-ctl restart

http://www.ppmy.cn/ops/84824.html

相关文章

Ubuntu设置时区

Ubuntu设置时区 在 Ubuntu 中设置时区可以通过以下几个步骤来完成: 方法一:使用命令行 查看当前时区设置: 可以使用以下命令查看当前系统的时区设置: timedatectl如果你想要详细信息,可以运行: timedatec…

SpringBoot3 JDK21 Vue3开源后台RBAC管理系统 | 2024年好用的开源RBAC管理系统 | 数据权限的探索

序言 项目现已全面开源,商业用途完全免费! 当前版本:v0.7.2。 如果喜欢这个项目或支持作者,欢迎Star、Fork、Watch 一键三连 🚀!! 在构建此代码框架的过程中,我已投入了大量精力&…

Go语言常见序列化协议全面对比

先说结论 从易用性、性能、内存占用、编码后大小等几个方面综合考虑 ProtoBuf 胜出。 Gob 从性能和 I/O 带宽占用上都和 ProtoBuf 差不多,唯一劣势是编解码时内存占用较多。考虑到不用再写 IDL 带来的易用性,如果整个系统内不存在使用除 Go 以外其他语言…

Redis从入门到超神-(五)Redis实现分布式锁原理

引言 什么是分布式锁? 分布式锁是分布式系统中用于控制多个进程或线程对共享资源的访问的一种机制。在分布式系统中,由于存在多个服务实例或节点,它们可能会同时尝试访问或修改同一份数据或资源。如果没有适当的同步机制,就可能导…

jenkins流水线语法--withCredentials篇

jenkins流水线语法--withCredentials篇 (在流水线代码中不显示明文密码) 在jenkinsfile中进行harbor登录上传镜像时直接用的密码,在代码中不怎么严谨,也缺失安全性;在网上查找资料和大佬们的博客,得出一篇完…

【vluhub】zabbix漏洞

介绍: zabbix是对服务器资源状态例如、内存空间、CPU、程序运行状态进行检测、设置预警值、短信设置等功能等一款开源工具。配置不当存在未授权,SQL注入漏洞 弱口令 nameadmin&passwordzabbix nameguest&password POST /index.php HTTP/1.1 Host: 192.1…

Java整理19

1、事务 JdbcTemplate xml配置文件中引入外部属性文件创建数据源对象 <context:property-placeholder location"classpath:jdbc.properties"></context> 数据库增、删、改编写sql语句调用jdbcTemplate。Update(sql,可变参数)查询Emp empjdbcTemplate.qu…

C++与VLC制作独属于你的动态壁纸背景

文章目录 前言效果展示为什么要做他如何实现他实现步骤获取桌面句柄代码获取桌面句柄libvlc_media_player_set_hwnd函数 动态壁纸代码 总结 前言 在当今的数字世界中&#xff0c;个性化和自定义化的体验越来越受到人们的欢迎。动态壁纸是其中一种很受欢迎的方式&#xff0c;它…