最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

遷移docker部署的gitlab過程(經(jīng)實戰(zhàn))

 更新時間:2026年05月22日 09:01:25   作者:dayfoxman  
本文詳細(xì)描述了如何將Docker部署的GitLab數(shù)據(jù)遷移到另一塊硬盤的過程,包括包括停止容器、遷移數(shù)據(jù)卷、修改掛載路徑、修正權(quán)限和重啟容器等等每一步驟都有詳細(xì)的說明確保遷移過程的安全性和有效性

很多時候為了節(jié)省硬盤或者擴(kuò)容硬盤,需要將 Docker 部署的 GitLab 數(shù)據(jù)遷移到另一塊硬盤,核心在于停止容器 -> 遷移數(shù)據(jù)卷 -> 修改掛載路徑 -> 修正權(quán)限 -> 重啟容器。

重要提示

  1. 操作前務(wù)必備份:防止遷移過程中數(shù)據(jù)損壞。
  2. 權(quán)限問題:GitLab 對文件權(quán)限非常敏感,遷移后必須修正所有者權(quán)限(通常為 998:998)。
  3. 停機(jī)時間:遷移期間 GitLab 無法訪問,請選擇業(yè)務(wù)低峰期操作。

第一步:準(zhǔn)備工作

確認(rèn)新硬盤掛載點 假設(shè)新硬盤已掛載到 /mnt/new_disk,你計劃將數(shù)據(jù)存放在 /mnt/new_disk/gitlab。

df -h  # 確認(rèn)新硬盤掛載點
mkdir -p /mnt/new_disk/gitlab/{config,logs,data}

確認(rèn)當(dāng)前 GitLab 容器信息 查看當(dāng)前容器的掛載路徑(以便確認(rèn)源數(shù)據(jù)位置):

docker inspect gitlab | grep Mounts -A 20
# 或者如果是 docker-compose
docker-compose ps

第二步:停止 GitLab 服務(wù)

為了保證數(shù)據(jù)一致性,必須停止容器。

# 如果是 docker-compose 部署
cd /path/to/your/gitlab-compose
docker-compose down

# 如果是 docker run 部署
docker stop gitlab
docker rm gitlab  # 遷移通常建議刪除舊容器重新創(chuàng)建,數(shù)據(jù)在卷里不會丟

第三步:遷移數(shù)據(jù)

使用 rsync 遷移數(shù)據(jù),它能保留文件權(quán)限、軟鏈接和時間戳,比 cp 更安全。

# 語法:rsync -av [源路徑/] [目標(biāo)路徑/]
# 注意:源路徑末尾加 / 表示復(fù)制目錄內(nèi)容,不加表示復(fù)制目錄本身

sudo rsync -av /opt/gitlab/config/ /mnt/new_disk/gitlab/config/
sudo rsync -av /opt/gitlab/logs/ /mnt/new_disk/gitlab/logs/
sudo rsync -av /opt/gitlab/data/ /mnt/new_disk/gitlab/data/

第四步:修改配置文件

你需要告訴 Docker 新的數(shù)據(jù)路徑在哪里。

情況 A:使用 docker-compose.yml (推薦)

編輯 docker-compose.yml 文件,修改 volumes 部分:

version: '3'
services:
  web:
    image: 'gitlab/gitlab-ce:latest'
    # ... 其他配置 ...
    volumes:
      # 修改為新的硬盤路徑
      - '/mnt/new_disk/gitlab/config:/etc/gitlab'
      - '/mnt/new_disk/gitlab/logs:/var/log/gitlab'
      - '/mnt/new_disk/gitlab/data:/var/opt/gitlab'

情況 B:使用 docker run 命令

在重新運行容器時,修改 -v 參數(shù):

docker run -d \
    --hostname gitlab.example.com \
    -p 443:443 -p 80:80 -p 2222:22 \
    --name gitlab \
    --restart always \
    # 下面三行修改為新路徑
    -v /mnt/new_disk/gitlab/config:/etc/gitlab \
    -v /mnt/new_disk/gitlab/logs:/var/log/gitlab \
    -v /mnt/new_disk/gitlab//var/opt/gitlab \
    gitlab/gitlab-ce:latest

第五步:修正文件權(quán)限 (關(guān)鍵步驟)

GitLab 的 Docker 鏡像內(nèi)部通常使用用戶 ID 998 運行。如果新硬盤的文件所有者不是 998,GitLab 將無法啟動或報錯 Permission denied。

# 將新目錄的所有者遞歸修改為 998:998
sudo chown -R 998:998 /mnt/new_disk/gitlab/

# 確保目錄權(quán)限正確
sudo chmod -R 755 /mnt/new_disk/gitlab/

第六步:啟動并驗證

啟動容器

# docker-compose
docker-compose up -d

# docker run
# (執(zhí)行上面的 docker run 命令)

觀察日志

查看啟動日志,確保沒有 Permission denied 錯誤:

docker logs -f gitlab

當(dāng)看到 gitlab Reconfigured. 或 ok: run: gitlab-workhorse: (pid ...) 等字樣,說明啟動成功。

  • 訪問驗證
  • 打開瀏覽器訪問 GitLab 地址。
  • 嘗試登錄、查看項目、提交代碼。
  • 檢查后臺設(shè)置中的存儲路徑是否正常。

第七步:清理舊數(shù)據(jù) (確認(rèn)無誤后)

運行穩(wěn)定 1-2 天確認(rèn)無誤后,再刪除舊數(shù)據(jù)釋放空間:

# 備份舊數(shù)據(jù)以防萬一
mv /opt/gitlab /opt/gitlab.bak

# 確認(rèn)一切正常后再刪除
# rm -rf /opt/gitlab.bak

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • docker搭建zookeeper集群和kafka集群并使用Java測試詳解

    docker搭建zookeeper集群和kafka集群并使用Java測試詳解

    本文詳細(xì)介紹了如何在Linux虛擬機(jī)中使用Docker搭建Kafka集群環(huán)境,并通過Kafka-Manager進(jìn)行可視化管理,文章包括了從鏡像拉取、容器網(wǎng)絡(luò)設(shè)置、Zookeeper和Kafka集群搭建到測試和使用Java連接集群的全過程
    2026-01-01
  • docker進(jìn)行本地部署的實現(xiàn)示例

    docker進(jìn)行本地部署的實現(xiàn)示例

    本文主要介紹了docker進(jìn)行本地部署的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-09-09
  • Linux Docker安裝wordpress的方法詳解教程

    Linux Docker安裝wordpress的方法詳解教程

    這篇文章主要介紹了Linux Docker安裝wordpress的方法詳解教程的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • Docker部署Microsoft Sql Server詳細(xì)步驟

    Docker部署Microsoft Sql Server詳細(xì)步驟

    大家好,本篇文章主要講的是Docker部署Microsoft Sql Server詳細(xì)步驟,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • 清理docker容器里的nacos日志方式

    清理docker容器里的nacos日志方式

    文章提供了一個用于清理Docker容器中Nacos日志的腳本,并建議將其設(shè)置為每天計劃任務(wù),作者分享個人經(jīng)驗,希望對大家有所幫助
    2026-01-01
  • docker如何打包前端并運行完整步驟詳解

    docker如何打包前端并運行完整步驟詳解

    這篇文章主要介紹了使用Vue3和Vite1開發(fā)前端項目的過程,包括項目啟動、開發(fā)服務(wù)器運行、構(gòu)建生產(chǎn)環(huán)境以及使用Docker部署,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-01-01
  • docker logs-查看docker容器日志的實現(xiàn)

    docker logs-查看docker容器日志的實現(xiàn)

    這篇文章主要介紹了docker logs-查看docker容器日志的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • 詳解基于Harbor搭建Docker私有鏡像倉庫

    詳解基于Harbor搭建Docker私有鏡像倉庫

    這篇文章主要介紹了詳解基于Harbor搭建Docker私有鏡像倉庫,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • Docker中安裝寶塔的詳細(xì)教程

    Docker中安裝寶塔的詳細(xì)教程

    這篇文章主要介紹了Docker中安裝寶塔的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03
  • Docker網(wǎng)絡(luò)之單host網(wǎng)絡(luò)及使用案例

    Docker網(wǎng)絡(luò)之單host網(wǎng)絡(luò)及使用案例

    本文重點給大家講解Docker單主機(jī)網(wǎng)絡(luò)的相關(guān)知識及使用案例,重點是使用案例,感興趣的朋友一起看看吧
    2017-08-08

最新評論

洞口县| 南华县| 祥云县| 图片| 霍林郭勒市| 桑日县| 油尖旺区| 平江县| 衡水市| 阜新| 高碑店市| 曲松县| 祁东县| 崇仁县| 永宁县| 商丘市| 宝清县| 珲春市| 景德镇市| 开原市| 额敏县| 康乐县| 香格里拉县| 太和县| 绍兴县| 汝城县| 永春县| 招远市| 崇仁县| 皮山县| 上犹县| 荔波县| 泗水县| 济宁市| 长丰县| 桐乡市| 新沂市| 定边县| 永川市| 濮阳市| 台北市|