部署


安装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. 卷积神经网络CNN实战:MINST手写数字识别——网络定义

    本文基于python-pytorch框架,编写CNN网络,并采用CNN手写数字数据集训练.测试网络. 网络的构建 以LeNet-5 网络为例 类定义 首先先了解一下网络的最基本框架 一般而言,首先创建 ...

  2. .NET 8 + Vue 3 极简 RABC 权限管理系统

    前言 在日常工作中,几乎每家公司都需要一个后台管理系统来处理各种任务.为了帮助大家快速搭建这样一个系统,给大家介绍一个基于最新技术 .NET 8 和前端框架 Vue 3 实现的极简 RABC(基于角色 ...

  3. pom阿里加速镜像地址

    <repositories> <repository> <id>alimaven</id> <name>aliyun maven</n ...

  4. 关于centos7下所有指令失效

    起因: 疑似宝塔更新修复后,本地所有环境变量集体不生效 问题环境 xshell环境下ssh连接 问题描述: - bash: xxx not fund - 环境变量无法保存 - 所有的保存方式都是临时生 ...

  5. 【Mac + Appium + Java1.8(二)】之Android模拟器自动化测试脚本开发以及简易例子

    直接上代码: import io.appium.java_client.AppiumDriver; import org.junit.After; import org.junit.Before; i ...

  6. 肉夹馍(Rougamo)4.0.1 异步方法变量调试修复与IoC系列扩展

    肉夹馍(https://github.com/inversionhourglass/Rougamo),一款编译时AOP组件,无需在应用启动时进行初始化,也无需繁琐的配置:支持所有种类方法(同步和异步. ...

  7. .NET 最好用的验证组件 FluentValidation

    前言 一个 .NET 验证框架,支持链式操作,易于理解,功能完善,组件内提供十几种常用验证器,可扩展性好,支持自定义验证器,支持本地化多语言. 项目介绍 FluentValidation 是一个开源的 ...

  8. C#自定义控件—文本显示、文本设值

    C#用户控件之文本显示.设定组件 如何绘制一个便捷的文本显示组件.文本设值组件(TextShow,TextSet)? 绘制此控件的目的就是方便一键搞定标签显示(可自定义方法显示文本颜色等),方便自定义 ...

  9. 测距技术 超声波、毫米波、激光雷达LIDAR

    超声波 技术成熟,成本之选 声波传输慢,高速时误差大 超声波雷达有40kHz.48kHz和58kHz三种,频率越高,灵敏度越高,探测角度越小.在工作状态,通过收发超声波,超声波雷达能以1-3cm精度测 ...

  10. R-Adapter:零样本模型微调新突破,提升鲁棒性与泛化能力 | ECCV 2024

    大规模图像-文本预训练模型实现了零样本分类,并在不同数据分布下提供了一致的准确性.然而,这些模型在下游任务中通常需要微调优化,这会降低对于超出分布范围的数据的泛化能力,并需要大量的计算资源.论文提出新 ...