我有一个需要解析数据集文件的 Java 应用程序。我已经使用 docker 容器化了应用程序,但容器在我的主机中看不到我的文件。因此,我需要以某种方式将它包含在 docker 容器中,或者通过映射到我的容器中的 docker 卷使其可用。
在我拥有的 Java 应用程序中
String dataSet = "/usr/DataSet/TempData.txt"; // inside the container
File textfile = new File(dataSet);
Scanner sc = new Scanner(textfile);
我的文件存储在我主机的目录 (/home/myusername/Desktop/DataSet) 中。
我使用 maven 中的 spotify 插件编译和构建我的 docker 镜像。构建映像后,我运行一个容器并映射一个包含我的 TempData.txt 的卷:
sudo docker run -it -v /home/myUserName/Desktop/DataSet:/usr/DataSet --name myapp myImageName bash
但是我收到 java.io.FileNotFoundException 错误,因为该文件在我的容器中不可用..
使文件可用于我的 java dockerized 应用程序以便能够读取和解析它的最佳方法是什么?
感谢您的投入!
当我将文件放在主目录中时,问题就解决了。然后将其映射到我的容器中...
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句