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

Docker移動安裝目錄的2種實現(xiàn)過程

 更新時間:2025年08月30日 08:46:46   作者:超齡超能程序猿  
本文介紹Docker遷移數(shù)據(jù)目錄的兩種方法:軟鏈接(無需改配置,路徑跳轉,適合臨時遷移)和配置修改(需編輯daemon.json指定新路徑,長期穩(wěn)定),操作需停服務、備份、確保權限與路徑正確

運行Docker移動安裝目錄實現(xiàn)方案(軟鏈接+配置修改)

一、核心前提:明確 Docker 核心目錄

Docker 默認數(shù)據(jù)存儲目錄為 /var/lib/docker(含鏡像、容器、網絡、存儲等核心數(shù)據(jù)),所有遷移操作均圍繞該目錄展開。

先通過以下命令確認目錄信息:

#1. 查看默認目錄是否存在

ls -ld /var/lib/docker

#2. 查看目錄占用空間(新目錄需至少滿足此空間)

du -sh /var/lib/docker

#3. (可選)查看當前Docker數(shù)據(jù)目錄配置(驗證默認路徑)

docker info | grep "Docker Root Dir"

二、核心原理:兩種方案的底層邏輯對比

方案類型核心邏輯優(yōu)勢劣勢適用場景
軟鏈接方案通過ln -s創(chuàng)建 “舊路徑→新路徑” 的軟鏈接,系統(tǒng)訪問舊路徑時自動跳轉至新路徑無需改配置、操作簡單、可逆性強依賴新路徑穩(wěn)定性(如掛載盤卸載會失效)臨時遷移、快速擴展、不熟悉配置修改
配置修改方案編輯 Docker 配置文件(daemon.json),指定新數(shù)據(jù)目錄,Docker 直接讀取新路徑長期穩(wěn)定、不依賴軟鏈接、適合生產環(huán)境需修改配置、操作步驟稍多長期遷移、生產環(huán)境、新路徑固定

三、方案一:軟鏈接實現(xiàn)(快速遷移,無需改配置)

1. 操作步驟(同前序優(yōu)化版,核心為 “移動 + 軟鏈接跳轉”)

(1)停止 Docker 服務(必做,避免數(shù)據(jù)損壞)

#適用于Ubuntu/CentOS 7+/Debian等systemd系統(tǒng)

sudo systemctl stop docker

sudo systemctl disable docker  # 臨時禁用開機啟動,防止操作中自動重啟

#適用于CentOS 6等sysvinit系統(tǒng)

#sudo service docker stop

驗證停止:sudo systemctl status docker 顯示 “inactive (dead)” 即成功。

(2)備份原目錄(可選但強烈建議)

#壓縮備份到/root目錄,文件名含日期便于區(qū)分

sudo tar -zcvf /root/docker-backup-\$(date +%Y%m%d).tar.gz /var/lib/docker

(3)移動原目錄到新位置(示例新目錄:/data/docker

#1. 創(chuàng)建新目錄(父目錄不存在時自動創(chuàng)建)

sudo mkdir -p /data/docker

#2. 移動原目錄(保留文件權限、屬性,比復制更安全)

sudo mv /var/lib/docker /data/docker

驗證移動:ls -l /data/docker 能看到containersimages等子目錄即成功。

(4)創(chuàng)建軟鏈接(舊路徑指向新路徑)

#命令格式:ln -s 新目錄 舊目錄(順序不可反!)

sudo ln -s /data/docker /var/lib/docker

驗證鏈接:ls -l /var/lib/ | grep docker 顯示 “/var/lib/docker -> /data/docker” 即正確。

(5)重啟 Docker 并驗證

#恢復開機啟動+重啟

sudo systemctl enable docker && sudo systemctl start docker

#驗證功能:查看鏡像、啟動測試容器

sudo docker images  # 應與遷移前一致

sudo docker run --rm hello-world  # 成功輸出歡迎信息即正常

四、方案二:修改配置文件(移動文件 + 指定新目錄,長期穩(wěn)定)

1. 操作步驟(核心為 “移動 + 配置指定新路徑”)

(1)停止 Docker 服務(同方案一,必做)

sudo systemctl stop docker

sudo systemctl disable docker

(2)備份原目錄(同方案一,防數(shù)據(jù)丟失)

sudo tar -zcvf /root/docker-backup-\$(date +%Y%m%d).tar.gz /var/lib/docker

(3)移動原目錄到新位置(示例新目錄:/home/docker

#1. 創(chuàng)建新目錄

sudo mkdir -p /home/docker

#2. 移動原目錄(與方案一一致,保留完整數(shù)據(jù)結構)

sudo mv /var/lib/docker /home/docker

(4)修改 Docker 配置文件(daemon.json

Docker 通過/etc/docker/daemon.json讀取自定義配置,若文件不存在需新建:

#1. 編輯/創(chuàng)建配置文件(用vim或nano,示例用vim)

sudo vim /etc/docker/daemon.json

#2. 寫入以下內容(指定新數(shù)據(jù)目錄,路徑替換為你的實際新目錄)

{

 "data-root": "/home/docker"  # 關鍵配置:指定Docker新數(shù)據(jù)根目錄

}

#3. 保存退出(vim中按Esc,輸入:wq回車)

注意:若原文件已有內容(如鏡像加速配置),只需新增"data-root": "新路徑",保持 JSON 格式正確(逗號分隔,無多余符號)

示例:

{

 "registry-mirrors": ["https://xxx.mirror.aliyuncs.com"],  # 原有加速配置

 "data-root": "/home/docker"  # 新增的新目錄配置

}

(5)重載配置并重啟 Docker

#1. 重載systemd配置(使新的daemon.json生效)

sudo systemctl daemon-reload

#2. 恢復開機啟動+重啟Docker

sudo systemctl enable docker && sudo systemctl start docker

(6)驗證配置與數(shù)據(jù)完整性

#1. 驗證新目錄是否生效(查看Docker Root Dir是否為新路徑)

docker info | grep "Docker Root Dir"  # 應顯示“Docker Root Dir: /home/docker”

#2. 驗證數(shù)據(jù):查看鏡像、容器是否正常

sudo docker images

sudo docker ps -a

#3. 測試功能:啟動測試容器

sudo docker run --rm hello-world

五、兩種方案的常見問題排查

1. 共性問題:Docker 啟動失敗

#查看日志定位原因(核心排查手段)

sudo journalctl -u docker  # systemd系統(tǒng)

#或查看Docker原生日志

sudo cat /var/log/docker.log
  • 權限不足:新目錄需與原目錄權限一致(通常為root:root,權限 700):
#方案一/二通用,替換路徑為你的新目錄

sudo chown -R root:root /data/docker  # 或/home/docker

sudo chmod -R 700 /data/docker
  • 配置格式錯誤(僅方案二)daemon.json格式錯誤會導致啟動失敗,可通過以下命令檢查格式:
#安裝jq工具(若未安裝)

sudo apt install jq  # Ubuntu/Debian

#或 sudo yum install jq  # CentOS/RHEL

#檢查配置文件格式

jq . /etc/docker/daemon.json  # 無報錯則格式正確

2. 個性問題

  • 軟鏈接無效(方案一)ls -l /var/lib/docker 若顯示 “broken link”,需重新創(chuàng)建軟鏈接(確保新目錄路徑正確,無拼寫錯誤)。
  • 舊目錄殘留(方案二):遷移后/var/lib/docker可能為空目錄(因已移動),可手動刪除(需確認備份完成):sudo rm -rf /var/lib/docker。

操作總結

兩種方案核心差異

  • 軟鏈接方案靠 “路徑跳轉”,無需改配置,適合臨時場景;
  • 配置修改方案靠 “主動指定新路徑”,長期穩(wěn)定,適合生產環(huán)境。

必遵循的核心原則

  • 無論哪種方案,必須先停止 Docker 服務(運行中移動會導致數(shù)據(jù)損壞);
  • 務必備份原目錄(遷移失敗可恢復,尤其生產環(huán)境);
  • 新目錄需滿足 “空間充足 + 權限正確(root:root,700)+ 路徑穩(wěn)定”。

選擇建議

  • 臨時擴展磁盤、快速遷移:選軟鏈接方案;
  • 生產環(huán)境、長期固定新路徑:選配置修改方案。

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

相關文章

  • 淺談Docker安全機制內核安全與容器之間的網絡安全

    淺談Docker安全機制內核安全與容器之間的網絡安全

    這篇文章主要介紹了Docker安全機制內核安全與容器之間的網絡安全,具有一定參考價值,需要的朋友可以了解下。
    2017-09-09
  • Docker 自動部署tomcat詳解

    Docker 自動部署tomcat詳解

    這篇文章主要介紹了Docker 自動部署tomcat詳解的相關資料,需要的朋友可以參考下
    2016-11-11
  • Docker鏡像分層的實現(xiàn)示例

    Docker鏡像分層的實現(xiàn)示例

    本文主要介紹了Docker鏡像分層的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-08-08
  • docker部署redis的具體實現(xiàn)

    docker部署redis的具體實現(xiàn)

    在開發(fā)中,我們經常會遇到使用redis的場景,本文主要介紹了docker部署redis的具體實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2024-06-06
  • win10環(huán)境下安裝Docker的實現(xiàn)

    win10環(huán)境下安裝Docker的實現(xiàn)

    這篇文章主要介紹了win10環(huán)境下安裝Docker的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09
  • Windows 安裝 Docker核心思路

    Windows 安裝 Docker核心思路

    Docker是一個讓應用在隔離環(huán)境中運行的工具,本質上是在已運行的Linux系統(tǒng)中創(chuàng)建一個隔離的文件環(huán)境,本文介紹了在Windows上安裝Docker的方法,感興趣的朋友跟隨小編一起看看吧
    2026-03-03
  • 如何通過Docker制作wsl的tar文件

    如何通過Docker制作wsl的tar文件

    這篇文章主要介紹了通過Docker制作wsl的tar文件,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • Docker 數(shù)據(jù)卷及數(shù)據(jù)容器詳細介紹及示例

    Docker 數(shù)據(jù)卷及數(shù)據(jù)容器詳細介紹及示例

    這篇文章主要介紹了Docker 數(shù)據(jù)卷及數(shù)據(jù)容器詳細介紹及示例的相關資料,Docker 很強大,不僅部署維護提高效率,docker和宿主之間的數(shù)據(jù)共享以及docker間的數(shù)據(jù)共享需要好好研究一下,需要的朋友可以參考下
    2016-11-11
  • 備份Docker容器中的PostgreSQL數(shù)據(jù)的圖文實操教程

    備份Docker容器中的PostgreSQL數(shù)據(jù)的圖文實操教程

    現(xiàn)在docker容器很方便,可以一鍵部署項目,但是方便部署的同時,也給運維帶來了麻煩,docker中的pgsql數(shù)據(jù),如何進行備份呢,本文小編給大家就介紹了備份Docker容器中的PostgreSQL數(shù)據(jù)的圖文實操教程,需要的朋友可以參考下
    2024-09-09
  • Docker部署Apollo的實現(xiàn)步驟

    Docker部署Apollo的實現(xiàn)步驟

    眾所周知分布式配置中心在目前也可以說是企業(yè)中項目的標配了,本文主要介紹了Docker 部署Apollo的實現(xiàn)步驟,具有一定的參考價值,感興趣的可以了解一下
    2024-02-02

最新評論

元朗区| 玉田县| 玉树县| 永修县| 甘德县| 罗定市| 曲沃县| 页游| 兴安县| 洮南市| 启东市| 宜川县| 昌邑市| 竹北市| 前郭尔| 鱼台县| 九龙县| 湄潭县| 丽水市| 崇文区| 兴城市| 连云港市| 陆丰市| 霍城县| 潜山县| 阳山县| 浙江省| 河南省| 宣恩县| 沅江市| 仲巴县| 伊宁县| 潜江市| 盘山县| 临沧市| 大理市| 寿宁县| 阜新市| 门源| 惠水县| 若尔盖县|