我正在尝试在容器内运行perl脚本。该脚本将访问10多个服务器以进行读写。服务器在本地和其他国家/地区都存在。因此,在运行docker映像时,我将绑定所有卷。反过来,这会导致启动容器的巨大延迟。
有没有最佳的方式来处理这种情况?是否可以在启动容器之前预先安装这些卷(例如在docker build期间进行安装)?
答案 0 :(得分:0)
在docker构建期间,您无法挂载任何东西,因为您本质上是在任何docker / kubernetes集群上构建可在任何地方运行的映像。 因此挂载仅在运行命令期间有意义。
您可以尝试预先创建nfs(或仅本地卷)卷,并在运行期间按名称挂载。可能只是因为已经创建了卷,所以速度可能更快。这是一个文档:
https://docs.docker.com/engine/reference/commandline/volume_create/
搜索--opt type=nfs
这是如何使用创建的卷:
https://docs.docker.com/storage/volumes/#start-a-container-with-a-volume