使用 Host volume

  1. Host volume 是使用 host 中的目錄與容器的資料夾相連,在 host 建立測試目錄 /mnt/data。
    [root@dyw219 ~]# mkdir /mnt/data
    
  2. 使用 centos image 開啟一個容器,指定連結 host 的 /mnt/data,資料夾名稱為 /data,查看 /data 目錄下目前無任何檔案。
    [root@dyw219 ~]# docker run --rm -v /mnt/data:/data -it centos ls -l /data
    total 0
    
  3. host 的 /mnt/data 建立一個空檔案 file2。
    [root@dyw219 ~]# touch /mnt/data/file2
    [root@dyw219 ~]# ll /mnt/data/
    total 0
    -rw-r--r--. 1 root root 0 Aug 22 06:59 file2
    
  4. 再使用 centos image 開啟一個容器,指定連結 host 的 /mnt/data,資料夾名稱為 /data,查看 /data 目錄下有一檔案 file2。
    [root@dyw219 ~]# docker run --rm -v /mnt/data:/data -it centos ls -l /data
    total 0
    -rw-r--r--. 1 root root 0 Aug 21 22:59 file2
    
  5. 再使用 centos image 開啟一個容器,指定連結 host 的 /mnt/data,資料夾名稱為 /data,在容器的 /data 目錄建立一檔案 file3 後退出。
    [root@dyw219 ~]# docker run --rm -v /mnt/data:/data -it centos touch /data/file3
    [root@dyw219 ~]# ll /mnt/data/
    
  6. 查看 host 的 /mnt/data 目錄,已有 file2, file3 兩個檔案。
    total 0
    -rw-r--r--. 1 root root 0 Aug 22 06:59 file2
    -rw-r--r--. 1 root root 0 Aug 22 07:02 file3