自动化部署之gitlab备份和恢复
<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备份和恢复相关推荐
- gitlab备份及恢复
gitlab备份步骤 https://blog.csdn.net/qq_31666147/article/details/79844107 gitlab版本 下载地址 https://mirrors ...
- tomcat自动化部署(拉取\备份、部署、更新、回滚)
一.传统部署方式及优缺点 1.传统部署方式 (1)纯手工scp (2)纯手工登录git pull.svn update (3)纯手工xftp往上拉 (4)开发给打一个压缩包,rz上去:解压 2.缺点 ...
- Gitlab备份和恢复操作记录
一.Gitlab的备份目录路径 在/etc/gitlab/gitlab.rb可以看到备份的目录 # gitlab_rails['backup_path'] = "/var/opt/gitla ...
- python项目自动化部署_Jenkins+GitLab+Msbuild+Python自动化部署.Net项目
发布应用 应用构建成功后,接下来是将构建项目的输出目录copy到应用服务器相应的站点目录中,由于目标的应用服务器都是windows系统,因此无法像linux系统一样通过ssh远程命令操作.目前提供了三 ...
- git自动部署代码到服务器windows,Jenkins-在windows上配置自动化部署(Jenkins+Gitlab+IIS)...
Jenkins-在windows上配置自动化部署(Jenkins+Gitlab+IIS) web部署样例 windows服务部署样例 系统备份 在服务器上创建后缀名为.ps1的文件,例:BackUpD ...
- Mongodb 物理备份和恢复 —— 筑梦之路
物理备份是指备份 MongoDB 数据目录,包括所有的数据文件.日志文件和配置文件.这种备份方法可以保留 MongoDB 数据库的完整性和一致性,也可以加快备份和恢复的速度.以下是备份和恢复 Mong ...
- gitlab部署、配置更改、备份及恢复
1.gitlab部署 官网 gitlab.com Ubuntu14.04安装 1.Install and configure the necessary dependencies sudoapt-ge ...
- 基于 Docker 和 GitLab 的前端自动化部署实践笔记
基于 Docker 和 GitLab 的前端自动化部署 实践笔记 随着接触的项目越来越多,在部署测试流程上重复耗时工作也越来越多,所以对前端工作的CI/CD实现愈发迫在眉睫. 前端开发由于三大框架的崛 ...
- Jenkins+Gitlab+Ansible自动化部署(四)
Jenkins+Gitlab+Ansible自动化部署(2021-08-11) 一.Jenkins Linux Shell 集成 登录Jenkins web管理页,点击新建任务 添加描述信息 添加构建 ...
最新文章
- 常用Shell脚本编写的内置变量
- Java Web整合开发(10) -- 资源国际化
- Web前端小白入门指迷
- Gartner:移动设备在工作场所中的使用尚未成熟
- iso linux 内核版本号_Linux内核全面介绍
- 按照学号查找学生_[源码和文档分享]基于JAVA和MYSQL数据库的学生成绩管理系统...
- 分析设计网上书店数据库,并画E-R图
- jQuery -- 目录
- 删除行对MySQL序列有这么多影响?
- java 获取手机系统_Android系统信息获取
- 在线动态几何编辑器 GeometryEditor
- DAEFRHDSGYEVHHQKLVFFAEDV|138648-77-8
- 【题解】将军令 Luogu P3942 (未完成)
- windows压缩包 无法在Linux上打开
- 对高尔顿数据集实现线性回归分析
- ASIHTTPRequest 状态栏网络等待指示器
- 打印时的纸张大小尺寸
- SendFax过程分析
- 计算机实验室智能管理,基于物联网的智能计算机实验室管理系统.pdf
- 移动端-微信端-pc端判断参考逻辑
热门文章
- 实验二 动态规划算法 最大字段和问题
- [Cocoa]为已有的XCode工程创建Git仓库
- exchange2007 灾难恢复E00.log(虚拟环境实验)
- android 动态修改 selector,Android Selector 按下修改背景和文本颜色的实现代码
- vc++6.0获取磁盘基本信息_分享一个实用脚本--一键获取linux内存、cpu、磁盘IO等信息...
- CSS3 常用属性
- Python删除文件及进行文件夹压缩
- Collection接口的常用方法
- 27、Label 自适应文本 xib
- 实战1--应用EL表达式访问JavaBean的属性