docker windows10 共享目錄掛載失敗的解決方案
起因
在執(zhí)行docker腳本的時(shí)候,出現(xiàn)不能創(chuàng)建容器的錯(cuò)誤。
如下所示:
Cannot create container for service xxx: b'Drive has not been shared'
上了Stack Overflow,查看解決方法是通過(guò)Setting->Shared Drives,接著勾選自己想要用于docker掛載鏡像的磁盤(pán)地址。

但是,無(wú)論你怎么勾選,Rest credentials,Apply,甚至Reset,出廠化都無(wú)濟(jì)于事。每一次輸入用戶密碼后,docker 都自動(dòng)把我的選項(xiàng)刷沒(méi)了。
此時(shí)你需要分析一下有幾種原因:
1、是不是本地安全策略中本地策略->安全選項(xiàng)->網(wǎng)絡(luò)訪問(wèn):本地賬戶的共享與安全模型,中安全設(shè)置沒(méi)有放開(kāi)權(quán)限,這里需要選擇經(jīng)典模式。
2、是不是防火墻的問(wèn)題,445端口沒(méi)有被用于映射
3、會(huì)不會(huì)是Hyper-V被禁用了


這邊主要是第一種情況導(dǎo)致的drive has not been shared,設(shè)置好之后,Setting->Shared Drives->想要掛載的盤(pán),reset,運(yùn)行完事。
補(bǔ)充:win10 docker 使用run -v 時(shí),虛擬機(jī)無(wú)法顯示宿主機(jī)掛載的目錄
這幾天在學(xué)習(xí)docker,今天博主遇到的問(wèn)題是這樣的:
docker run --name centos7 -it -v D:\docker-data\exchange\:/mnt centos:7
使用如上方法啟動(dòng)一個(gè)容器,在虛擬機(jī)的/mnt目錄下怎么也無(wú)法加載D:\docker-data\exchange\下面的文件。但是啟動(dòng)容器的時(shí)候正常啟動(dòng),沒(méi)有報(bào)任何錯(cuò)誤,折騰了好一陣。但是昨天我用這個(gè)方法是能正常掛載,能正常讀取到宿主機(jī)的文件的。
后來(lái)才發(fā)現(xiàn),是自己昨天最后改了自己電腦的密碼,要重新驗(yàn)證才可以正常讀取。(不知道是不是docker的一個(gè)坑,明明之前驗(yàn)證過(guò)的密碼已經(jīng)變動(dòng)了,執(zhí)行上面的命令也不要求重新認(rèn)證,也不報(bào)錯(cuò),坑)
使用如下方法先清除驗(yàn)證,打開(kāi)docker的settings窗口,在如下頁(yè)面點(diǎn)擊reset credentials,再勾選上要掛載的目錄所在磁盤(pán),重新輸入密碼(這里不知道為何非要密碼,我的電腦一直都不設(shè)置密碼,為了用docker特設(shè)置了一個(gè))

然后就可以成功掛載目錄到虛擬機(jī)了。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
Docker安裝MySQL8.0的實(shí)現(xiàn)方法
這篇文章主要介紹了Docker安裝MySQL8.0的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01
docker imageid 和 digest區(qū)別解析
在Docker中,image ID和digest是兩個(gè)不同的標(biāo)識(shí)符,用于唯一標(biāo)識(shí)和引用Docker鏡像的不同方面,這篇文章主要介紹了docker imageid 和 digest區(qū)別,需要的朋友可以參考下2023-06-06
基于Docker+Selenium Grid的測(cè)試技術(shù)應(yīng)用示例代碼
Selenium Grid允許我們?cè)诙嗯_(tái)計(jì)算機(jī)上并行運(yùn)行測(cè)試,并集中管理不同的瀏覽器版本和瀏覽器配置。這篇文章給大家介紹基于Docker+Selenium Grid的測(cè)試技術(shù)應(yīng)用示例代碼,需要的朋友參考下吧2021-08-08
給docker創(chuàng)建的elasticsearch容器添加密碼簡(jiǎn)單步驟
在使用Elasticsearch(ES)Docker容器時(shí),有時(shí)需要設(shè)置密碼來(lái)保護(hù)數(shù)據(jù)的安全性,這篇文章主要給大家介紹了關(guān)于給docker創(chuàng)建的elasticsearch容器添加密碼的簡(jiǎn)單步驟,需要的朋友可以參考下2024-02-02
使用docker compose一鍵部署項(xiàng)目到服務(wù)器過(guò)程
本文介紹通過(guò)IntelliJ IDEA使用docker-compose.yml構(gòu)建和管理容器集合,需修改Docker配置、設(shè)置執(zhí)行器路徑,編寫(xiě)yml文件并配置刪除鏡像以確保每次更新拉取遠(yuǎn)程鏡像,最后通過(guò)日志管理容器2025-07-07

