Gitlab восстановление из бэкапа

Гитлаб — резервное копирование и восстановление

Предположим, что бэкап у вас уже есть.
Делается он крайне просто и средствами самого гитлаба

Желательно в конфиге ограничить его время жизни и прописать.

1. Ограничиваем время жизни неделей:
vi /etc/gitlab/gitlab.rb
gitlab_rails[‘backup_keep_time’] = 604800

Сохраняем, переконфигурируем гитлаб
gilab-ctl reconfigure

2. Добавляем задачу в крон
crontab -r
0 3 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create CRON=1
Ежедневно в 3 часа ночи

3. Восстановление:
— скопировать архив с бэкапом в папку где должен лежать бэкап (если он лежит не там)
«там» — это параметр gitlab_rails[‘backup_path’] в файле gitlab.rb
по умолчанию это /var/opt/gitlab/backups

— остановить процессы, коннектящиеся к базе данных:
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
# Verify
gitlab-ctl status

— восстановить из имеющегося бэкапа
gitlab-rake gitlab:backup:restore BACKUP=xxxxxxx_2017_01_01_10.0.0

— перезапустить и проверить
gitlab-ctl start
gitlab-rake gitlab:check SANITIZE=true

Во всех командах опущено sudo.