部署


安装Postfix以发送通知邮件
yum install postfix
将postfix服务设置成开机自启动
systemctl enable postfix
启动postfix
systemctl start postfix
下载镜像
wget  https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-15.0.0-ce.0.el7.x86_64.rpm
安装依赖项
yum install policycoreutils-python
安装gitlab
rpm -i gitlab-ce-15.0.0-ce.0.el7.x86_64.rpm
配置gitlab地址,格式http://公网ip:端口号
vi  /etc/gitlab/gitlab.rb
external_url 'https://192.168.2.107:8084'
重载配置
gitlab-ctl reconfigure
启动
gitlab-ctl restart
默认登录
账号root,密码存放在/etc/gitlab/initial_root_password文件中

启动时,遇到GitLab is taking too much time to respond

  • 默认8080被端口占用,修改重启即可

    vi  /etc/gitlab/gitlab.rb
    
    puma['port'] = 8099 或者 unicorn['port']=8099
    gitlab_workhorse['auth_backend'] = "http://localhost:8099"
  • 加载配置并重启

    sudo gitlab-ctl reconfigure
    sudo gitlab-ctl restart

卸载

gitlab-ctl stop
rpm -e gitlab-ce # 看是gitlab-ce版本还是gitlab-ee版本
ps aux | grep gitlab
kill -9 17313 # 杀掉`runsvdir -P /opt/gitlab/service log`的进程
find / -name *gitlab*|xargs rm -rf
find / -name gitlab | xargs rm -rf
ls /root/gitlab*

备份

首先进行老Gitlab服务器全量备份,使用一条命令即可创建完整的Gitlab备份。

gitlab-rake gitlab:backup:create

迁移

​ 新服务器上的Gitlab的版本必须与创建备份时的Gitlab版本号相同. 比如新服务器安装的是最新的11.1.4版本的Gitlab, 那么迁移之前, 最好将老服务器的Gitlab 升级为11.1.4再进行备份。

获取备份数据

第一步,从远程服务器copy刚才的备份文件到了新服务器的/var/opt/gitlab/backups/ 备份目录下

root@centos backups]# pwd
/var/opt/gitlab/backups
[root@centos backups]# ll
total 554280
-rwxr-xr-x. 1 root root 567582720 Sep 7 11:01 1635815578_2021_11_02_10.0.0_gitlab_backup.tar
[root@centos backups]#
修改备份文件权限

第二步,将备份文件权限修改为777,避免恢复的时出现权限不够,不能解压的问题

chmod 777 1635815578_2021_11_02_10.0.0_gitlab_backup.tar
停止相关数据连接服务
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
从备份文件中恢复Gitlab数据

gitlab-rake gitlab:backup:restore BACKUP=备份文件编号

gitlab-rake gitlab:backup:restore BACKUP=1635815578_2021_11_02_10.0.0  # 注意是备份文件编号
重新刷新配置【否则无法登陆】
gitlab-ctl reconfigure
启动
gitlab-ctl restart

升级

10.0.0 --> 15.0

必须先升级小版本的最大版本,再升级更高的版本,依次递进。

升级之前先做备份

https://blog.csdn.net/jin0955/article/details/127013916

配置yum源

cat >/etc/yum.repos.d/gitlab-ce.repo<<EOF
[gitlab-ce]
name=gitlab-ce
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
repo_gpgcheck=0
gpgcheck=0
enable=1
gpgkey=https://packages.gitlab.com/gpg.key
EOF

升级不用停gitlab,注意不能跨大版本升级,只能逐级升

10.0.0->10.8.7->11.0.0->11.11.8->12.0.0->12.10.9->13.0.0->13.12.9->14.0.0->14.10.5->15.0.0->15.3.3

循环执行以下步骤

sudo yum install gitlab-ce-x.x.xxxx
sudo gitlab-ctl stop sidekiq; // 13.10之前
sudo gitlab-ctl stop unicorn;
// 13.10之后
sudo gitlab-ctl stop puma; sudo gitlab-ctl reconfigure;
sudo gitlab-ctl restart; //查看版本
cat /var/opt/gitlab/gitlab-rails/VERSION

Gitlab运维操作的更多相关文章

  1. Linux内存运维操作及常用命令

    Linux内存运维操作及常用命令 1.问题诊断 1.1 什么是 Linux 服务器 Load Average? 1.2如何查看 Linux 服务器负载? 1.3服务器负载高怎么办? 1.4如何查看服务 ...

  2. 2015年br运维操作归档

    归档2015年在br做运维时常用的命令,主要梳理出log的过滤操作. 对于日志文本的处理,常见还是sed和awk,具体如下: 统计ip访问量: cat nginx.log |awk '{print $ ...

  3. Redis 相关运维操作

    背景 Redis作为目前全球最流行的KV存储,除了使用之外,还需要做好日常的运维工作.关于运维相关的工作,本文从以下方面进行介绍说明(Redis5.0以上): 内存方面 客户端连接方面 工具方面 说明 ...

  4. WebLogic11g-常用运维操作

    转:http://www.codeweblog.com/weblogic11g-%e5%b8%b8%e7%94%a8%e8%bf%90%e7%bb%b4%e6%93%8d%e4%bd%9c/ 希望这篇 ...

  5. 深入浅出学习透析 Nginx 服务器的基本原理和配置指南「运维操作实战篇」

    Nginx前提回顾 Nginx 是一个高性能的 Web 和反向代理服务器, 它具有有很多非常优越的特性: Web服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效 ...

  6. 【redis使用全解析】常见运维操作

    作者:gnuhpc 出处:http://www.cnblogs.com/gnuhpc/ 1.1 启动 1.1.1 启动redis $ redis-server redis.conf 常见选项: ./r ...

  7. Linux bash运维操作日志审计(单服务器)

    目前公司有几台机器比较重要,需要把所有用户的操作记录下来,于是就是参照资料来完成 1. vim /etc/profile.d/oplogrc.sh logdir=/opt/oplog userdir= ...

  8. Hadoop运维操作

    1.      处理hadoop的namenode宕机 处理措施: 进入hadoop的bin目录,重启namenode服务 操作命令: cd path/to/hadoop/bin ./hadoop-d ...

  9. [Gitlab运维系列]Gitlab 403 forbidden 并发引起IP被封

    问题 带着团队使用Git,使用的是自搭建的Gitlab.但今天打开页面的时候显示的是空白页面,上面还有一次文本Forbidden. 原因 Gitlab使用rack_attack做了并发访问的限制. 解 ...

  10. Ceph分布式存储-运维操作笔记

    一.Ceph简单介绍1)OSDs: Ceph的OSD守护进程(OSD)存储数据,处理数据复制,恢复,回填,重新调整,并通过检查其它Ceph OSD守护程序作为一个心跳 向Ceph的监视器报告一些检测信 ...

随机推荐

  1. bazel简介(二)——从makefile向bazel转变(使用genrule)

    0x01 背景 上篇中已经介绍了bazel的基本工作原理和相关的概念.这篇将继续介绍下,现有的makefile构建工程如何切换到bazel构建系统. bazel提供了丰富的扩展方式,当然也支持从目前的 ...

  2. JavaScript设计模式样例十六 —— 备忘录模式

    备忘录模式(Memento Pattern) 定义:保存一个对象的某个状态,以便在适当的时候恢复对象.目的:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态.场景:数据缓存. ...

  3. Java——N以内累加求和

    2024/07/15 1.题目 2.错误 3.分析 4.答案 1.题目 2.错误 import java.util.Scanner; public class Main { public static ...

  4. ES6中对数组的数据进行排序

    今天在工作中遇到了要对多选数据进行排序的一个功能,在此学习记录一下. 实现效果:点击左边的向下或者向上排序的按钮实现数据的排序. 选择第二个向下排序,结果如下: 具体方法如下: //找到原来需要排序的 ...

  5. LaTeX 编译 acmart 文档报错:No country present for an affiliation.

    在编译一篇从 arXiv 下载的文档时遇到如下错误: Class acmart Error: No country present for an affiliation. 有两种解决方案: 将错误降级 ...

  6. Ubuntu 设置 FTP 服务

    安装 VSFTP 服务 sudo apt install vsftpd 检查配置文件 sudo vim /etc/vsftpd.conf 确保以下配置项正确: #禁止匿名访问 anonymous_en ...

  7. HBuilder X在4K显示器怎么设置HBuilderX窗口本身的字体大小

    在使用HBuilder X编辑器的时候,使用笔记本自身的显示器,编辑器窗口本身的字体大小都正好,但是将HBuilder X编辑器用在外接显示器(高清)或者4K显示器上的时候,就不行了.怎么解决呢? 在 ...

  8. ElasticSearch-hard插件及IK分词器安装

    ElasticSearch-hard插件及IK分词器安装 编辑 ​ 通过上一篇学习,我们学会了ElasticSearch的安装及访问到了如下页面: 编辑 ​ ElasticSearch-head插件安 ...

  9. js玩儿爬虫

    前言 提到爬虫可能大多都会想到python,其实爬虫的实现并不限制任何语言. 下面我们就使用js来实现,后端为express,前端为vue3. 实现功能 话不多说,先看结果: 这是项目链接:https ...

  10. SQL Server – Temporal Table 时态表

    前言 之前写过一篇, 但那个时候还没有开始用, 现在是要用了, 所以翻新一下呗. SQL server temporal table 学习笔记 主要参考: 官网 Temporal tables [译] ...