<font size=5>gitlab的备份和恢复</font>

(1)创建备份目录,并授权
[root@linux-node1 ~]# mkdir /data/backups/gitlab -p
[root@linux-node1 ~]# chown -R git.git /data/
[root@linux-node1 ~]# ll /data/ -d
drwxr-xr-x 3 git git 20 Dec 20 16:21 /data/(2)修改gitlab配置
[root@linux-node1 ~]# vim /etc/gitlab/gitlab.rb
gitlab_rails['backup_path'] = "/data/backups/gitlab"    #备份路径
gitlab_rails['backup_keep_time'] = 604800   #备份7天
[root@linux-node1 ~]# gitlab-ctl reconfigure
[root@linux-node1 ~]# gitlab-ctl restart
ok: run: gitaly: (pid 41722) 0s
ok: run: gitlab-monitor: (pid 41735) 1s
ok: run: gitlab-workhorse: (pid 41738) 0s
ok: run: logrotate: (pid 41748) 0s
ok: run: nginx: (pid 41755) 0s
ok: run: node-exporter: (pid 41757) 0s
ok: run: postgres-exporter: (pid 41765) 0s
ok: run: postgresql: (pid 41792) 0s
ok: run: prometheus: (pid 41795) 0s
ok: run: redis: (pid 41807) 0s
ok: run: redis-exporter: (pid 41812) 1s
ok: run: sidekiq: (pid 41822) 0s
ok: run: unicorn: (pid 41831) 0s(3)备份
[root@linux-node1 ~]# gitlab-rake gitlab:backup:create
Dumping database ...
Dumping PostgreSQL database gitlabhq_production ... [DONE]
done
Dumping repositories ...* java/app1 ... [DONE]* java/app1.wiki ...  [SKIPPED]
done
Dumping uploads ...
done
Dumping builds ...
done
Dumping artifacts ...
done
Dumping pages ...
done
Dumping lfs objects ...
done
Dumping container registry images ...
[DISABLED]
Creating backup archive: 1513759548_2017_12_20_10.2.4_gitlab_backup.tar ... done
Uploading backup archive to remote storage  ... skipped
Deleting tmp directories ... done
done
done
done
done
done
done
done
Deleting old backups ... done. (0 removed)(4)查看备份目录
[root@linux-node1 ~]# ll /data/backups/gitlab/
total 72
-rw------- 1 git git 71680 Dec 20 16:45 1513759548_2017_12_20_10.2.4_gitlab_backup.tar
#1513759548_2017_12_20_10.2.4为时间戳,备份的时候用的着(5)恢复备份
删除gitlab中的app1的项目,再恢复
停止数据写入服务:
[root@linux-node1 ~]# gitlab-ctl stop unicorn
[root@linux-node1 ~]# gitlab-ctl stop sidekiq恢复数据:
[root@linux-node1 ~]# gitlab-rake gitlab:backup:restore BACKUP=1513759548_2017_12_20_10.2.4
[root@linux-node1 ~]# gitlab-ctl restart
ok: run: gitaly: (pid 45486) 0s
ok: run: gitlab-monitor: (pid 45502) 0s
ok: run: gitlab-workhorse: (pid 45507) 1s
ok: run: logrotate: (pid 45525) 0s
ok: run: nginx: (pid 45531) 1s
ok: run: node-exporter: (pid 45536) 0s
ok: run: postgres-exporter: (pid 45540) 1s
ok: run: postgresql: (pid 45547) 0s
ok: run: prometheus: (pid 45555) 1s
ok: run: redis: (pid 45562) 0s
ok: run: redis-exporter: (pid 45568) 1s
ok: run: sidekiq: (pid 45572) 0s
ok: run: unicorn: (pid 45614) 0s

此时即可恢复原来的项目

邮件配置:
gitlab_rails['time_zone'] = 'Asia/Shanghai'
gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = 'xiaoming@126.com'
gitlab_rails['gitlab_email_display_name'] = 'gitlab'
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.126.com"
gitlab_rails['smtp_port'] = 25
gitlab_rails['smtp_user_name'] = "xiaoming"
gitlab_rails['smtp_password'] = "your password"
gitlab_rails['smtp_domain'] = "126.com"

gitlab_rails['smtp_authentication'] = "login"


本文转自 IT_外卖小哥 51CTO博客,原文链接:http://blog.51cto.com/jinlong/2052584

自动化部署之gitlab备份和恢复相关推荐

  1. gitlab备份及恢复

    gitlab备份步骤 https://blog.csdn.net/qq_31666147/article/details/79844107 gitlab版本  下载地址 https://mirrors ...

  2. tomcat自动化部署(拉取\备份、部署、更新、回滚)

    一.传统部署方式及优缺点 1.传统部署方式 (1)纯手工scp (2)纯手工登录git pull.svn update (3)纯手工xftp往上拉 (4)开发给打一个压缩包,rz上去:解压 2.缺点 ...

  3. Gitlab备份和恢复操作记录

    一.Gitlab的备份目录路径 在/etc/gitlab/gitlab.rb可以看到备份的目录 # gitlab_rails['backup_path'] = "/var/opt/gitla ...

  4. python项目自动化部署_Jenkins+GitLab+Msbuild+Python自动化部署.Net项目

    发布应用 应用构建成功后,接下来是将构建项目的输出目录copy到应用服务器相应的站点目录中,由于目标的应用服务器都是windows系统,因此无法像linux系统一样通过ssh远程命令操作.目前提供了三 ...

  5. git自动部署代码到服务器windows,Jenkins-在windows上配置自动化部署(Jenkins+Gitlab+IIS)...

    Jenkins-在windows上配置自动化部署(Jenkins+Gitlab+IIS) web部署样例 windows服务部署样例 系统备份 在服务器上创建后缀名为.ps1的文件,例:BackUpD ...

  6. Mongodb 物理备份和恢复 —— 筑梦之路

    物理备份是指备份 MongoDB 数据目录,包括所有的数据文件.日志文件和配置文件.这种备份方法可以保留 MongoDB 数据库的完整性和一致性,也可以加快备份和恢复的速度.以下是备份和恢复 Mong ...

  7. gitlab部署、配置更改、备份及恢复

    1.gitlab部署 官网 gitlab.com Ubuntu14.04安装 1.Install and configure the necessary dependencies sudoapt-ge ...

  8. 基于 Docker 和 GitLab 的前端自动化部署实践笔记

    基于 Docker 和 GitLab 的前端自动化部署 实践笔记 随着接触的项目越来越多,在部署测试流程上重复耗时工作也越来越多,所以对前端工作的CI/CD实现愈发迫在眉睫. 前端开发由于三大框架的崛 ...

  9. Jenkins+Gitlab+Ansible自动化部署(四)

    Jenkins+Gitlab+Ansible自动化部署(2021-08-11) 一.Jenkins Linux Shell 集成 登录Jenkins web管理页,点击新建任务 添加描述信息 添加构建 ...

最新文章

  1. 常用Shell脚本编写的内置变量
  2. Java Web整合开发(10) -- 资源国际化
  3. Web前端小白入门指迷
  4. Gartner:移动设备在工作场所中的使用尚未成熟
  5. iso linux 内核版本号_Linux内核全面介绍
  6. 按照学号查找学生_[源码和文档分享]基于JAVA和MYSQL数据库的学生成绩管理系统...
  7. 分析设计网上书店数据库,并画E-R图
  8. jQuery -- 目录
  9. 删除行对MySQL序列有这么多影响?
  10. java 获取手机系统_Android系统信息获取
  11. 在线动态几何编辑器 GeometryEditor
  12. DAEFRHDSGYEVHHQKLVFFAEDV|138648-77-8
  13. 【题解】将军令 Luogu P3942 (未完成)
  14. windows压缩包 无法在Linux上打开
  15. 对高尔顿数据集实现线性回归分析
  16. ASIHTTPRequest 状态栏网络等待指示器
  17. 打印时的纸张大小尺寸
  18. SendFax过程分析
  19. 计算机实验室智能管理,基于物联网的智能计算机实验室管理系统.pdf
  20. 移动端-微信端-pc端判断参考逻辑

热门文章

  1. 实验二 动态规划算法 最大字段和问题
  2. [Cocoa]为已有的XCode工程创建Git仓库
  3. exchange2007 灾难恢复E00.log(虚拟环境实验)
  4. android 动态修改 selector,Android Selector 按下修改背景和文本颜色的实现代码
  5. vc++6.0获取磁盘基本信息_分享一个实用脚本--一键获取linux内存、cpu、磁盘IO等信息...
  6. CSS3 常用属性
  7. Python删除文件及进行文件夹压缩
  8. Collection接口的常用方法
  9. 27、Label 自适应文本 xib
  10. 实战1--应用EL表达式访问JavaBean的属性