遷移gitlab

我自建的gitlab是跑在synology上,不過因為效能太差了
因此決定將gitlab移植到vm上.

之前測試了讓vm掛載synology網芳的gitlab data的資料夾,
但是都會發生權限的問題.

因此目前打算讓gitlab data的資料夾也放在vm的本機端.
再透過定期備份的方式,來保全資料.
以下是我移機的紀錄

備份

docker exec -it gitlab gitlab-rake gitlab:backup:create

還原-前置工作
建立資料夾

mkdir -p $PWD/files/data/backups
mkdir -p $PWD/files/conf
mkdir -p $PWD/files/log/

複製備份資料

cp $OLD_GITLAB_PATH/backups/1510018625_2017_11_07_10.1.0_gitlab_backup.tar $PWD/files/data/backups

執行新的gitlab

docker run -d \
  --name=gitlab \
  --publish 443:443 \
  --publish 80:80 \
  --restart always \
  -v $PWD/files/conf:/etc/gitlab \
  -v $PWD/files/log:/var/log/gitlab \
  -v $PWD/files/data:/var/opt/gitlab \
  gitlab/gitlab-ce:10.1.0-ce.0

等待兩三分鐘後,確定可以進入gitlab web ui介面後
開始進入還原工作

還原
進入container

docker exec -it gitlab bash

停止服務

gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

設定權限

chmod 777 /var/opt/gitlab/backups/1510018625_2017_11_07_10.1.0_gitlab_backup.tar

還原

gitlab-rake gitlab:backup:restore BACKUP=1510018625_2017_11_07_10.1.0

重啟服務

gitlab-ctl restart

check

gitlab-rake gitlab:check SANITIZE=true