3

我正在尝试将 gitlab A 的备份还原到 gitlab B。它们使用相同的版本(8.15.0),但是当我尝试使用以下命令进行还原时:

sudo gitlab-ctl stop sidekiq
sudo gitlab-ctl stop unicorn
sudo gitlab-rake gitlab:backup:restore BACKUP=1482434794_2016_12_22

我收到以下错误:

rake aborted!
TypeError: no implicit conversion of nil into String
/opt/gitlab/embedded/service/gitlab-rails/lib/backup/manager.rb:122:in `exist?'
/opt/gitlab/embedded/service/gitlab-rails/lib/backup/manager.rb:122:in `unpack'
/opt/gitlab/embedded/service/gitlab-rails/lib/tasks/gitlab/backup.rake:32:in `block (3 levels) in <top (required)>'
/opt/gitlab/embedded/bin/bundle:22:in `load'
/opt/gitlab/embedded/bin/bundle:22:in `<main>'
Tasks: TOP => gitlab:backup:restore
(See full trace by running task with --trace)

该服务器仅使用创建的 root 用户进行了全新安装。Git 实验室正在运行,我已经运行过一次:

sudo gitlab-ctl reconfigure

我正在使用 ubuntu 16.04 LTS 并安装了 Omnibus 版本。我用来进行备份的命令是

sudo gitlab-rake gitlab:backup:create

并且生成的文件是这样的:

1482434794_2016_12_22_gitlab_backup.tar

知道我做错了什么吗?感谢您的帮助

4

2 回答 2

8

如果您只放置一个备份,/var/opt/gitlab/backups/则可以使用sudo gitlab-rake gitlab: backup: restore不带BACKUP = 1482434794_2016_12_22.

这对我有帮助。

于 2016-12-23T09:27:05.453 回答
2

这可能会帮助其他阅读这篇文章的人,我可以通过指定完整的备份文件名(不仅仅是时间戳)来恢复我的备份

我在Ubuntu 16.04中使用gitlab-ce 8.15.4-ce.1(综合安装)

sudo gitlab-rake gitlab:backup:restore BACKUP=1484655963_2017_01_17_gitlab_backup.tar
于 2017-01-17T13:09:56.667 回答