如何从 java docker 容器应用程序解析文件
how to parse a file from a java docker container application
我有一个 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 docker 化应用能够读取和解析文件的最佳方法是什么?
感谢您的意见!
当我把我的文件放在我的主目录中时,问题就解决了。然后将其映射到我的容器中...
我有一个 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 docker 化应用能够读取和解析文件的最佳方法是什么?
感谢您的意见!
当我把我的文件放在我的主目录中时,问题就解决了。然后将其映射到我的容器中...