gitlab备份与恢复

1、gitlab备份与恢复

参考:https://docs.gitlab.com/ce/raketasks/backup_restore.html

创建系统备份
sudo gitlab-rake gitlab:backup:create
备份文件存在/var/opt/gitlab/backups,可编辑/etc/gitlab/gitlab.rb修改
源码安装使用下面命令备份
sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production
docker安装使用下面命令备份
docker exec -t <container name:gitlab> gitlab-rake gitlab:backup:create
将备份上传到远程存储(暂无)
将备份文件存储到本地
gitlab_rails['backup_upload_connection'] = {
  :provider => 'Local',
  :local_root => '/mnt/backups'
}

The directory inside the mounted folder to copy backups to Use ‘.’ to store them in the root directory gitlab_rails[‘backup_upload_remote_directory’] = ‘gitlab_backups’

备份档案权限

# In /etc/gitlab/gitlab.rb, for omnibus packages
gitlab_rails['backup_archive_permissions'] = 0644 # Makes the backup archives world-readable
备份配置文件
针对(Omnibus)备份:/etc/gitlab/gitlab.rb 、/etc/gitlab/gitlab-secrets.json
添加定时备份
每天凌晨两点备份
0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create CRON=1
保留备份30天,单位秒
gitlab_rails['backup_keep_time'] = 2592000

2、Omnibus安装恢复

确认备份档案放到gitlab.rb定义的备份目录(默认/var/opt/gitlab/backups)
sudo cp 1504793137_2017_09_07_9.5.3_gitlab_backup.tar /var/opt/gitlab/backups/
停止连接数据库的进程
sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq
# Verify
sudo gitlab-ctl status
恢复备份档案,指定时间戳
sudo gitlab-rake gitlab:backup:restore BACKUP=1504793137_2017_09_07_9.5.3
> Unpacking backup ... tar: 1504796591_2017_09_07_9.5.3_gitlab_backup.tar: Cannot open: Permission denied
chmod git:git 1504796591_2017_09_07_9.5.3_gitlab_backup.tar
重启并检查恢复情况
sudo gitlab-ctl restart
sudo gitlab-rake gitlab:check SANITIZE=true

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏.net core新时代

使用Nancy.Host实现脱离iis的Web应用

  本篇将介绍如何使用Nancy.Host实现脱离iis的Web应用,在开源任务管理平台TaskManagerV2.0代码里面已经使用了Nancy.Host实现...

2547
来自专栏电光石火

Windows10系统下安装配置MongoDB数据库

1、下载 地址:http://www.mongodb.org/downloads(32位还是64位自行选择)。 2、解压 把mongodb-win...

1975
来自专栏hbbliyong

gunzip 和 unzip 解压文件到指定的目录

Linux 常用的压缩命令有 gzip 和 zip,两种压缩包的结尾不同:zip 压缩的后文件是 *.zip ,而 gzip 压缩后的文件 *.gz  相应的...

2915
来自专栏王小雷

React Natvie在Mac os上安装并创建项目

详细记录React-Native 0.47版本在Mac OS 上安装过程并初始化项目。 ? 1. 安装RN环境 1.1 安装brew /usr/bin/ruby...

1966
来自专栏IT可乐

Linux 安装mysql

使用 yum 安装源码包(必须有网络) 1、输入如下安装命令,安装过程中输入 y yum install mysql-server -y 2、查看mysql 服...

2356
来自专栏西安-晁州

nodejs应用离线安装部署、卸载

公司写的文档,直接粘贴过来了: 本文档提供node应用一键安装、部署、卸载说明,包含对应脚本文件 默认版本: 1、nodejs:v6.11.2.linux-...

1960
来自专栏电光石火

Windows10系统下安装配置MongoDB数据库

1、下载 地址:http://www.mongodb.org/downloads(32位还是64位自行选择)。

1815
来自专栏liulun

在CentOS上搭建PHP服务器环境

 您也可以使用一键自动部署环境的工具,请参见网友开发的这个工具 http://www.centos.bz/2013/08/ezhttp-tutorial/ ...

2226
来自专栏企鹅号快讯

基于cookie的登陆验证与退出

看到信息里面有这样一条疑问: 是一个关于关于cookie登陆退出的问题。问题原文为:怎么实现退出登陆,页面跳转到登陆页面,前端登陆后,后端返回字段设置cooki...

27510
来自专栏柠檬先生

vue2.0 组件通信

组件通信:     子组件要想拿到父组件数据 props     子组件不允许直接给父级的数据, 赋值操作如果想更改,父组件每次穿一个对象给子组件,     对...

20910

扫码关注云+社区