docker版本為18.06
windows上安裝的docker其實本質上還是借助與windows平台的hyper-v技術來創建一個Linux虛擬機,你執行的所有命令其實都是在這個虛擬機里執行的,所以所有pull到本地的image都會在虛擬機的Virtual hard disks目錄的文件中,這個文件就是虛擬硬盤文件。
隨着使用增加,C盤存儲逐漸不夠用,只能將鏡像文件遷移到別的盤。
網上有說修改hyper-v管理器,或者修改docker的Settings,但是實踐下來並不管用,重啟之后又回到原來的目錄。
本文通過創建文件鏈接來實現鏡像的遷移,無需修改docker配置。環境為win10
查看docker鏡像路徑
退出docker
找到鏡像文件
將文件復制到想要的路徑下,本文路徑為D:\app\Hyper-V
刪除源文件夾C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks
以管理員運行cmd
創建鏈接
mklink /J "C:\Users\Public\Documents\Hyper-V\Virtual hard disks" D:\app\Hyper-V
可在源路徑看到新建出來的文件夾
啟動docker
創建鏡像
docker pull centos:latest
如下D盤文件大小發生了變化


![clipboard[1] clipboard[1]](/image/aHR0cHM6Ly9pbWcyMDE4LmNuYmxvZ3MuY29tL2Jsb2cvMTUxMTAxMy8yMDE4MTAvMTUxMTAxMy0yMDE4MTAxNTE3MjEwNjA0NS0xNTg5OTIxMDc5LnBuZw==.png)
![clipboard[2] clipboard[2]](/image/aHR0cHM6Ly9pbWcyMDE4LmNuYmxvZ3MuY29tL2Jsb2cvMTUxMTAxMy8yMDE4MTAvMTUxMTAxMy0yMDE4MTAxNTE3MjEwNzc4OC0yMDIyNjgyNjEyLnBuZw==.png)
![clipboard[3] clipboard[3]](/image/aHR0cHM6Ly9pbWcyMDE4LmNuYmxvZ3MuY29tL2Jsb2cvMTUxMTAxMy8yMDE4MTAvMTUxMTAxMy0yMDE4MTAxNTE3MjExMDIwNC0xNDMzNTI2MjY4LnBuZw==.png)
![clipboard[4] clipboard[4]](/image/aHR0cHM6Ly9pbWcyMDE4LmNuYmxvZ3MuY29tL2Jsb2cvMTUxMTAxMy8yMDE4MTAvMTUxMTAxMy0yMDE4MTAxNTE3MjExMTY5MS0xMjY5ODgzNzMucG5n.png)
![clipboard[5] clipboard[5]](/image/aHR0cHM6Ly9pbWcyMDE4LmNuYmxvZ3MuY29tL2Jsb2cvMTUxMTAxMy8yMDE4MTAvMTUxMTAxMy0yMDE4MTAxNTE3MjExMzE4My0xMTczMDIxMDA1LnBuZw==.png)
![clipboard[6] clipboard[6]](/image/aHR0cHM6Ly9pbWcyMDE4LmNuYmxvZ3MuY29tL2Jsb2cvMTUxMTAxMy8yMDE4MTAvMTUxMTAxMy0yMDE4MTAxNTE3MjExNTM0My05NTQ0NDUxNDEucG5n.png)
![clipboard[7] clipboard[7]](/image/aHR0cHM6Ly9pbWcyMDE4LmNuYmxvZ3MuY29tL2Jsb2cvMTUxMTAxMy8yMDE4MTAvMTUxMTAxMy0yMDE4MTAxNTE3MjExNjg2NC05NTM5NDUzMzYucG5n.png)
![clipboard[8] clipboard[8]](/image/aHR0cHM6Ly9pbWcyMDE4LmNuYmxvZ3MuY29tL2Jsb2cvMTUxMTAxMy8yMDE4MTAvMTUxMTAxMy0yMDE4MTAxNTE3MjExODMxNy0zNTk3ODU1NDYucG5n.png)