![](/img/trans.png)
[英]Docker: Mount volume on Windows host - Windows Container
[英]Is read/write performance better with docker volumes on windows (inside of a docker container only) or a mounted / shared volume with host OS?
我已經讀到在 windows 上安裝共享卷時性能會受到重大影響。 這與只說 docker 卷(不與主機操作系統共享)或從/向平面文件讀取/寫入的速率相比如何?
有沒有人找到任何具體的數字? 如果僅用於磁盤IO性能,我認為即使是 4 倍的減速也可以接受幫助將事情改善到可接受的范圍內。
此外,如果我將 Postgres 留在裸機上,我的所有 docker 應用程序仍能以這種方式訪問 Postgres 嗎? (這可能是我想像的首選——我已經看到關於保持裸機讀/寫速度提高 4 倍的報告)——但我仍然需要知道......因為我的應用程序也處理大量平面文件的復制/讀取/移動。 ..所以需要知道什么是最好的。
例如,如果共享卷真的很糟糕,而不是只保留在容器上,那么我可以選擇通過網絡推送文件以避免需要共享安裝卷作為瓶頸......
感謝您的任何見解
您只需為綁定安裝的主機目錄支付此性能成本。 命名為 Docker 卷或 Docker 容器文件系統將快得多。 標准 Docker Hub 數據庫映像配置為始終使用卷進行存儲,因此在這種情況下您應該使用命名卷。
docker volume create pgdata
docker run -v pgdata:/var/lib/postgresql/data -p 5432:5432 postgres:12
您也可以直接在主機上運行 PostgreSQL。 在使用 Docker 桌面應用程序的系統上,您可以通過特殊的主機名host.docker.internal
訪問它。 這在從 Docker 容器內部進行了詳細討論,如何連接到機器的本地主機? .
如果您使用 Docker 桌面應用程序,並且您將卷用於:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.