在docker container
中,file.renameTo
方法返回false。我在容器实例中使用PVC
。
我试着删除PVC,然后它工作正常,但当我使用PVC时返回false
返回false表示文件不会被移动或重命名为?。
在我的例子中,文件从PVC
位置移动到docker容器指定的位置。
当我们在Kubernetes
群集上启用PVC
时,存储位于不同的filesystem
上。
我认为这个问题与文件从一个文件系统移动到另一个文件系统有关。因为当PVC未被启用时,file.renameTo
工作正常,但当PVC被启用时,它将失败。
所以我的问题是,有哪些可能的方法来解决这个问题。我无法禁用PVC
,那么将文件从一个文件系统移动到另一个文件系统的可能解决方案是什么呢?
发布于 2020-06-26 20:14:14
根据我的假设,当我们使用PVC
时,您的存储在不同的位置,您的码头容器也在不同的位置。
因此,在这种情况下,文件移动有点复杂。在本例中,我使用的解决方案是在目标位置复制并粘贴文件。
public void copyFile(File pvcFileLocation, File dockerContainerLocation){
FileInputStream inputStream = new FileInputStream(pvcFileLocation);
FileOutputStream outputStream = new FileOutputStream(dockerContainerLocation);
int b = -1;
while ((b = inputStream.read()) != -1) {
outputStream.write(b);
}
inputStream.close();
outputStream.close();
}
https://stackoverflow.com/questions/62594519
复制相似问题