我试图将从gitlab A到gitlab B的备份恢复到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)
服务器有一个干净的安装,只需创建根用户。Git实验室在运行,我已经跑过一次了:
sudo gitlab-ctl reconfigure
我使用的是ubuntu16.04LTS并安装了Omnibus版本。我用来进行备份的命令是
sudo gitlab-rake gitlab:backup:create
生成的文件如下所示:
1482434794_2016_12_22_gitlab_backup.tar
知道我做错了什么吗?谢谢你的帮助
发布于 2016-12-23 01:27:05
如果您只在/var/opt/gitlab/backups/
中放置一个备份,则可以在不使用BACKUP = 1482434794_2016_12_22
的情况下使用命令sudo gitlab-rake gitlab: backup: restore
。
这对我的案子有帮助。
发布于 2017-01-17 05:09:56
这可能会帮助其他人阅读这篇文章,我可以通过指定完整的备份文件名(而不仅仅是时间戳)来恢复备份。
我使用的是Ubuntu 16.04的gitlab-ce 8.15.4-ce.1 (总括安装)
sudo gitlab-rake gitlab:backup:restore BACKUP=1484655963_2017_01_17_gitlab_backup.tar
https://stackoverflow.com/questions/41291390
复制相似问题