当前位置: 首页 > 知识库问答 >
问题:

gitlab迁移到docker同时恢复备份失败应该如何解决?

翟丰茂
2024-01-26

最近公司要把在云服务器的代码仓库迁移到内网
云服务器的gitlab是直接运行的,在内网要求使用docker部署,两边的版本都是gitlab ce 16.6.2
首先:我在云服务器通过命令生成 了备份压缩包:

gitlab-rake gitlab:backup:create 

接着把压缩包下载到内网服务器,使用docker-compose运行gitlab。
docker-compose.yml

version: '3'services:  gitlab:    container_name: gitlab    image: gitlab/gitlab-ce:16.6.2-ce.0    restart: always    ports:      - "80:80"    environment:      - TZ=Asia/Shanghai    volumes:      - /data/gitlab/config:/etc/gitlab      - /data/gitlab/logs:/var/log/gitlab      - /data/gitlab/data:/var/opt/gitlab    networks:      - gitlab_networknetworks:  gitlab_network:    driver: bridge 

容器成功启动,并且可以正常访问
复制 gitlab-secrets.json和gitlab.rb文件到/data/gitlab/config,重启容器生效
然后复制备份文件压缩包1706197160_2024_01_25_16.6.2_gitlab_backup.tar到/data/gitlab/data/backups
进入容器查看git用户的uid,之后给压缩包赋所有权到git用户
之后执行

gitlab-rake gitlab:backup:restore BACKUP=1706197160_2024_01_25_16.6.2 

提示如下:

2024-01-26 11:58:25 UTC -- Unpacking backup ... tar: Skipping to next headertar: Skipping to next headertar: Skipping to next headertar: A lone zero block at 6596142tar: Exiting with failure status due to previous errors2024-01-26 11:58:29 UTC -- Unpacking backup failed2024-01-26 11:58:29 UTC -- Deleting backup and restore PID file ... done  

查看/data/gitlab/logs/gitlab-rails下面的backup_json.log:

{"severity":"INFO","time":"2024-01-26T11:58:25.470Z","correlation_id":null,"message":"Unpacking backup ... "}{"severity":"INFO","time":"2024-01-26T11:58:29.994Z","correlation_id":null,"message":"Unpacking backup failed"}  

我不知道从哪里可以获取更多更详细的错误信息,请告诉我一下,我去获取更详细的错误信息。或者有遇见过相同问题的可以麻烦解答一下,感谢

共有1个答案

双恩
2024-01-26

https://blog.csdn.net/d_d1298/article/details/89672569

https://www.gnu.org/software/tar/manual/html_section/warnings...

https://www.ibm.com/support/pages/lone-zero-block

 类似资料:
  • 备份 Linux 系统,推荐使用tar。使用archlinux-2008.06-core-i686光盘启动系统[“压缩解压”一节) 命令备份: cd $FROM tar -zcvf $TO/backup.tgz \ --exclude=backup.tgz \ --exclude=mnt/*\ --exclude=proc/* \ --exclude=sys/*\* 系统更新后,

  • GitLab允许您恢复存储库的备份副本。 在本章中,我们将讨论如何恢复GitLab中的备份副本: 步骤(1): 首先,使用SSH(Secure Shell)登录到您的GitLab服务器。 步骤(2): 在恢复备份副本之前,首先确保备份副本位于目录中。 步骤(3): 您可以使用创建备份作业章节中介绍的命令来检查备份副本。 步骤(4): 现在,使用以下命令停止与数据库相关的进程: 通过关闭它们,上述命

  • 本文向大家介绍详解Docker中容器的备份、恢复和迁移,包括了详解Docker中容器的备份、恢复和迁移的使用技巧和注意事项,需要的朋友参考一下 今天,我们将学习如何快速地对docker容器进行快捷备份、恢复和迁移。Docker是一个开源平台,用于自动化部署应用,以通过快捷的途径在称之为容器的轻量级软件层下打包、发布和运行这些应用。它使得应用平台独立,因为它扮演了 Linux上一个额外的操作系统级

  • 我正在尝试备份mysql docker容器卷的数据。我找到了这篇文章,但它还不适合我。我使用git bash,因此可以使用unix工具。 问题是,我无法访问docker VM上的卷数据(磁盘映像位置为)。 我试过了 错误地退出 <代码>/var/lib/docker/卷/ 一个空的tar文件/备份sql。焦油产生了。 是否有人成功地使用docker for windows备份和恢复了docker卷

  • 导出 Navicat Monitor 设置可用于应用程序服务器迁移或备份目的。导出的 zip 文件包括令牌密钥、实例设置、存储库数据库设置以及还原时所需的所有文件。若要备份 Navicat Monitor 设置,请前往“配置”->“备份、升级或迁移”。 【注意】你只能在相同的主版本和次版本迁移设置。例如,Navicat Monitor v1.1.x 只接受 v1.1.y 的 zip 文件。 备份

  • 这小节我们要讨论应用程序管理的另一个方面:生产服务器上数据的备份和恢复。我们经常会遇到生产服务器的网络断了、硬盘坏了、操作系统崩溃、或者数据库不可用了等各种异常情况,所以维护人员需要对生产服务器上的应用和数据做好异地灾备,冷备热备的准备。在接下来的介绍中,讲解了如何备份应用、如何备份/恢复Mysql数据库和redis数据库。 应用备份 在大多数集群环境下,Web应用程序基本不需要备份,因为这个其实