-1

我正在为 docker 和文件系统而苦苦挣扎。我想从我的 Java 应用程序的 docker 卷中写入一个文件。主要目标是在同一台机器上运行的另一个应用程序可以读取该文件。

我阅读了相关问题,但没有找到任何使用 java 应用程序解决此问题的答案。关于如何做到这一点的任何想法?

4

1 回答 1

1

基于您的另一个问题的答案:

例子

所以你有两个需要共享文件系统的 docker 容器?假设您的 java 应用程序是容器化的,使用它来创建持久数据容器:

$ docker create -v /data --name mydata mydockerimage

使用此数据容器运行您的容器化程序

$ docker run -it --rm --volumes-from mydata mydockerimage create "/data/myfile.csv"
$ docker run -it --rm --volumes-from mydata mydockerimage read   "/data/myfile.csv"

可以将文件拉出数据容器:

$ docker cp mydata:/data/myfile.csv myfile.csv

最后,您最终需要清理数据容器

$ docker rm -v mydata

更新

您还没有说明您是如何构建或使用您的 java 程序的。我假设它是一个可以写入或读取 CSV 文件的可执行 jar:

java -jar myjar.jar create "/data/myfile.csv"
java -jar myjar.jar read   "/data/myfile.csv"

有关如何构建此类容器的示例,请参见:

于 2015-12-24T12:24:10.480 回答