欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在Docker容器中掛載主機目錄的方法

 更新時間:2025年06月24日 11:24:33   作者:1010n111  
在使用Docker時,有時需要將主機上的目錄掛載到容器中,以便在主機和容器之間共享數(shù)據(jù),使主機上的更新能實時反映到容器中,但不同的操作系統(tǒng)和Docker版本在掛載目錄時可能會有不同的方法和注意事項,本文給大家講解了在Docker容器中掛載主機目錄的方法

在Docker容器中掛載主機目錄的方法

技術背景

在使用Docker時,有時需要將主機上的目錄掛載到容器中,以便在主機和容器之間共享數(shù)據(jù),使主機上的更新能實時反映到容器中。但不同的操作系統(tǒng)和Docker版本在掛載目錄時可能會有不同的方法和注意事項。

實現(xiàn)步驟

使用ADD命令(不推薦用于實時更新場景)

可以在Dockerfile中使用ADD命令將主機目錄復制到容器中,但這種方式在構建容器后,主機目錄的更改不會反映到容器中。

ADD . /path/inside/docker/container

使用-v選項(適用于大多數(shù)場景)

在運行容器時使用-v選項可以將主機目錄掛載到容器中。以下是不同操作系統(tǒng)的示例:

  • Linux/Mac
docker run -t -i -v <host_dir>:<container_dir>  ubuntu /bin/bash

例如,將主機的/tmp目錄掛載到容器的/tmp目錄:

docker run -t -i -v /tmp:/tmp ubuntu /bin/bash
  • Windows 10
docker run -it -p 12001:80 -v c:\Users\C\Desktop\dockerStorage:/root/sketches

注意要確保主機驅(qū)動器已共享。也可以使用以下格式:

docker run -it -p 12001:80 -v //c/Users/C/Desktop/dockerStorage:/root/sketches <your-image-here> /bin/bash

使用--mount選項(Docker 17.06及以上版本)

--mount選項的語法更詳細,鍵值對的順序不重要,且值更容易理解。

docker run -it --mount src="$(pwd)",target=/test_container,type=bind k3_s3

如果掛載參數(shù)沒有空格,也可以使用反引號:

docker run -it --mount src=`pwd`,target=/test_container,type=bind k3_s3

對于使用boot2docker或docker-machine的情況

如果在Mac上使用boot2docker,可能需要進行兩次掛載:

  1. 將主機目錄掛載到boot2docker
sudo mount -t vboxsf hostfolder /boot2dockerfolder
  1. boot2docker目錄掛載到容器:
docker run -v /boot2dockerfolder:/root/containerfolder -i -t imagename

使用docker-compose

docker-compose.yaml文件中也可以進行目錄掛載:

version: '2'
services:
  cms:
    image: <IMAGE>:<TAG>
    ports:
      - <LOCAL_PORT>:<CONTAINER_PORT>
    volumes:
      - <LOCAL_PATH>:<CONTAINER_PATH>

例如:

version: '2'
services:
  cms:
    image: ghost-cms:latest
    ports:
      - 8080:8080
    volumes:
      - /volume-to-mount:/mnt

然后運行:

docker-compose -f docker-compose.yaml up -d

核心代碼

以下是一些常見的掛載命令示例:

# 使用 -v 選項掛載
docker run -t -i -v /tmp:/tmp ubuntu /bin/bash

# 使用 --mount 選項掛載
docker run -it --mount src="$(pwd)",target=/test_container,type=bind k3_s3

# 在 docker-compose.yaml 中掛載
version: '2'
services:
  app:
    image: your-image:tag
    volumes:
      - ./host-dir:/container-dir

最佳實踐

  • 使用絕對路徑:在掛載時盡量使用絕對路徑,避免使用相對路徑,以確保掛載的準確性。
  • 權限管理:要注意掛載目錄的權限問題,確保容器內(nèi)的進程有足夠的權限訪問掛載的目錄。
  • 開發(fā)環(huán)境使用:在開發(fā)環(huán)境中,使用目錄掛載可以方便地進行代碼調(diào)試和更新,避免頻繁重建容器。

常見問題

  1. 在Mac上使用boot2docker掛載后看不到內(nèi)容:可能是因為掛載的是boot2docker的目錄而不是主機目錄,需要進行兩次掛載。
  2. Windows上掛載失敗:要確保主機驅(qū)動器已共享,并且使用正確的路徑格式(如使用雙斜杠)。
  3. 無法在容器中更新文件:檢查掛載目錄的權限,確保容器內(nèi)的進程有讀寫權限。
  4. 掛載的目錄為空:可能是路徑錯誤或Docker配置問題,檢查路徑是否正確,以及是否需要在Docker設置中共享驅(qū)動器。

以上就是在Docker容器中掛載主機目錄的方法的詳細內(nèi)容,更多關于Docker掛載主機目錄的資料請關注腳本之家其它相關文章!

相關文章

  • docker5 全功能harbor倉庫搭建過程

    docker5 全功能harbor倉庫搭建過程

    Harbor是構建企業(yè)級私有docker鏡像的倉庫的開源解決方案,本文給大家分享docker5 全功能harbor倉庫搭建過程,感興趣的朋友一起看看吧
    2021-06-06
  • Docker化Spring Boot應用的實踐

    Docker化Spring Boot應用的實踐

    本文主要介紹了Docker化Spring Boot應用的實踐,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-06-06
  • docker容器狀態(tài)的轉(zhuǎn)換實現(xiàn)

    docker容器狀態(tài)的轉(zhuǎn)換實現(xiàn)

    這篇文章主要介紹了docker容器狀態(tài)的轉(zhuǎn)換實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • docker容器啟動成功外部訪問不到的原因分析

    docker容器啟動成功外部訪問不到的原因分析

    這篇文章主要介紹了docker容器啟動成功外部訪問不到的原因分析,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Docker部署前后端分離項目的實現(xiàn)示例

    Docker部署前后端分離項目的實現(xiàn)示例

    本文主要介紹了Docker部署前后端分離項目的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Docker volume 掛載卷的實現(xiàn)方法

    Docker volume 掛載卷的實現(xiàn)方法

    這篇文章主要介紹了Docker volume 掛載卷的實現(xiàn)方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-03-03
  • 使用docker部署hadoop集群的詳細教程

    使用docker部署hadoop集群的詳細教程

    這篇文章主要介紹了使用docker部署hadoop集群的詳細教程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值需要的朋友可以參考下
    2020-09-09
  • Docker部署RabbitMQ的實現(xiàn)方法(圖文并茂)

    Docker部署RabbitMQ的實現(xiàn)方法(圖文并茂)

    本文詳細介紹了如何使用Docker部署RabbitMQ的步驟,包括拉取RabbitMQ鏡像,創(chuàng)建與授權文件夾,創(chuàng)建RabbitMQ容器,查看啟動日志,訪問控制臺和登錄等,全程詳細的參數(shù)解釋和操作步驟,讓Docker部署RabbitMQ變得簡單易行
    2024-10-10
  • Windows安裝docker-desktop的詳細步驟

    Windows安裝docker-desktop的詳細步驟

    這篇文章主要介紹了Windows安裝docker-desktop的詳細步驟,本文通過圖文并茂的形式給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-03-03
  • docker基本命令及使用實例詳解

    docker基本命令及使用實例詳解

    這篇文章主要介紹了docker基本命令及使用實例,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03

最新評論