如何將Docker中GitLab資料備份到宿主Linux上

Hello——寻梦者!發表於2024-04-23

一 宿主機準備存放備份檔案的目錄

建議以年月日進行命名

  1. 使用putty.exe或者PowerShell登入遠端伺服器
  2. cd share (如果沒有當前目錄請建立該共享目錄)
  3. mkdir 20220930 (在共享目錄下建立備份資料夾)

二 進入Docker容器內部備份資料

1.執行命令 sudo docker exec -it gitlab /bin/bash -->進入到docker容器內部

2.執行備份命令 gitlab-rake gitlab:backup:create 備份gitlab資料

  1. docker內部預設的備份路徑可透過 cd var/opt/gitlab/backups命令進入
  2. 注意上述步驟2並沒有備份 gitlab.rbgitlab-secrets.json 兩個檔案需要單獨進行復製備份

備份成功的標誌如下,備份的時候可能需要一段時間

3.進入到GitLab預設備份資料夾 cd var/opt/gitlab/backups 檢視備份資料

  1. 執行exit命令退出Docker容器內部

三 將Docker容器內部備份資料複製至宿主機

  1. 使用Docker複製命令將tar檔案複製至宿主Linux伺服器備份目錄,其中sudo是賦予命令管理員許可權,docker cp docker容器內檔案 宿主機目錄,備份執行的命令如下:

sudo docker cp gitlab:/var/opt/gitlab/backups/1664522958_2022_09_30_14.2.3_gitlab_backup.tar share/20220930

  1. 使用Docker命令複製 gitlab.rb 系統配置檔案

sudo docker cp gitlab:/etc/gitlab/gitlab.rb share/20220930

  1. 使用Docker命令複製gitlab-secrets.json系統檔案

sudo docker cp gitlab:/etc/gitlab/gitlab-secrets.json share/20220930

  1. 檢視檔案是否複製至宿主資料夾share/20220930下面

相關文章