java - Docker 卷映射 + windows = 难以置信的慢?
问题描述
我目前正在尝试将在 docker 容器中运行的 postgres 中的数据复制到我的 Windows 主机。为此,我实现了一个使用 postgres-jdbc 驱动程序及其 CopyManager 的 java 应用程序(也在 docker 容器中),以便将特定数据复制到映射卷中的主机。
问题:当我将数据复制到映射的 windows 目录时,它变得非常慢。(写入 1 GB 数据大约需要 40 分钟 - 没有卷映射只需 1 分钟)
码头工人组成:
exportservice:
build: ./services/exportservice
volumes:
- samplePath:/export_data
我已经读过这是一个已知问题,但我还没有找到合适的解决方案。我的服务必须在基于 Windows 的生产环境中运行。那么有什么办法可以解决这个问题呢?WSL2?
期待您的建议!
解决方案
无论如何,将 Windows 文件夹挂载到 Docker 容器中总是很慢。在这方面,WSL2 甚至比 WSL1 还要慢。
最好的解决方案是安装 WSL2,将所有项目文件复制到 Linux 文件系统(安装在 Windows 中\\wsl$\<distro>\
),从那里运行容器并相应地安装 Linux 目录。这绕过了任何 Windows 文件交互。
我为 Web 开发人员编写了Docker书籍和视频课程,因为我找不到很好的入门教程来解释如何创建本地开发环境。它包括 Hyper-V 和 WSL2 说明和建议。使用折扣代码dock30
可享受 30% 的折扣。
推荐阅读
- javascript - 如何切换(开始/停止)ngrx 操作?
- php - 如何在 PHP 中转义单引号内的双引号?
- android - 我无法通过名称搜索在 google play store 中找到我的 android 应用
- php - Laravel 可搜索的附加条件
- python - 为什么它不能正常运行?
- python - 将列表名称作为列表传递以在 Python 中创建一个 numpy 数组
- javascript - 在 JS 中进行扩散抖动时出错
- typescript - TypeScript 装饰器现象(装饰器参数在特殊情况下变得未定义)
- python - AttributeError:“元组”对象没有属性“predicted_mean”
- wordpress - 如何使用浏览器原生图像延迟加载到 wordpress 画廊?