docker方式部署的gitlab跨版本遷移升級


之前代碼服務器用的 beginor/gitlab-ce:11.3.0-ce.0 的版本,而當前時間已經到12.4.1了。

gitlab 官方已經開始支持多語言, 而且也提供了 docker 鏡像, beginor/gitlab-ce  的鏡像作者已經不再維護,也建議大家切換到官方鏡像。

所以打算整理下遷移升級的步驟。

1.首先連接上docker  beginor/gitlab-ce:11.3.0-ce.0的容器

  docker exec -i -t gitlab /bin/bash

  在gitlab正常運行的情況下,輸入命令   gitlab-rake gitlab:backup:create  備份gitlab,完成后生成在  /var/opt/gitlab/backups/文件夾下 1572606813_2019_11_01_11.3.0_gitlab_backup.tar

  完成備份后,需要將文件復制出來留作備份。

   ① gitlab-ctl stop 停止gitlab全部服務

   ② exit 退出容器執行 

   ③ docker stop gitlab 停止容器 

2.我用的是新服務器,我把以前外掛目錄全都刪除掉了。只保留下了.tar的備份文件

  docker pull gitlab/gitlab-ce:11.3.0-ce.0 拉取官方的相同版本進行數據恢復操作

docker run \
--privileged=true \
--hostname 192.168.0.2 \
--detach \
--publish 80:80 \
--publish 443:443 \
--publish 22:22 \
--name gitlab \
--restart unless-stopped \
--volume /home/inxworld/gitlab/config:/etc/gitlab \
--volume /home/inxworld/gitlab/log:/var/log/gitlab \
--volume /home/inxworld/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:11.3.0-ce.0

 

  docker exec -i -t gitlab /bin/bash  進入dokcer 容器 gitlab 

   gitlab-rake gitlab:backup:restore BACKUP=1572606813_2019_11_01_11.3.0  恢復備份

  完成后訪問WEB檢查了下沒有什么問題。

   

3. 跨大版本升級

官方的升級路線指南 https://docs.gitlab.com/ee/policy/maintenance.html#upgrade-recommendations (反正我只是偶爾成功打開過一次,其他時間都是無法訪問)

我的升級路徑為:

         gitlab/gitlab-ce:11.3.0-ce.0  (當前的版本)->  gitlab/gitlab-ce:11.3.4-ce.0    ->   gitlab/gitlab-ce:11.11.8-ce.0   ->   gitlab/gitlab-ce:12.0.12-ce.0   ->    gitlab/gitlab-ce:12.4.1-ce.0 

先把需要的拉取回來
docker pull gitlab/gitlab-ce:11.3.4-ce.0 docker pull gitlab/gitlab-ce:11.11.8-ce.0 docker pull gitlab/gitlab-ce:12.0.12-ce.0 docker pull gitlab/gitlab-ce:12.4.1-ce.0

 

基本過程都是

     1.     docker exec -i -t gitlab /bin/bash  進入dokcer 容器 gitlab 

    2.    gitlab-ctl stop:停止全部服務

    3.    exit退出容器

    4.    docker stop gitlab  停止dokcer 容器 gitlab ,再刪除docker rm gitlab

    5.    

docker run \
--privileged=true \
--hostname 192.168.0.2 \
--detach \
--publish 80:80 \
--publish 443:443 \
--publish 22:22 \
--name gitlab \
--restart unless-stopped \
--volume /home/inxworld/gitlab/config:/etc/gitlab \
--volume /home/inxworld/gitlab/log:/var/log/gitlab \
--volume /home/inxworld/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:11.3.0-ce.0    ------------------------------------------------------------------注意修改這個位置

      6.漫長等待升級完成以后,登陸網站看看基本功能是否正常。

      7.循環1-6步驟,直到最新版本

 

我按這個升級的路線,走完以后,大概看了下看了下完成后的gitlab,翻譯的不是很全!別的倒沒遇到什么問題!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM