2017-08-11 17 views
0

データセットファイルを解析する必要のあるJavaアプリケーションがあります。私はドッカーを使用してアプリケーションをコンテナ化しましたが、コンテナは自分のホストに自分のファイルを表示しません。 だから、私は何とかそれをドッカーコンテナの中に含めるか、それを私のコンテナにマップされたドッカーボリュームを通して利用可能にする必要があります。私はjavaドッカーコンテナーアプリケーションからファイルを解析する方法

String dataSet = "/usr/DataSet/TempData.txt"; // inside the container 
File textfile = new File(dataSet); 
Scanner sc = new Scanner(textfile); 

、私のファイルを持っているJavaアプリケーション内の

は私のホストに(/ホーム/ myusernameと指定/デスクトップ/データセット)ディレクトリに格納されています。

mavenのspotifyプラグインを使用してドッカー画像をコンパイルしてビルドします。ファイルは私のコンテナに使用できないため、

...

sudo docker run -it -v /home/myUserName/Desktop/DataSet:/usr/DataSet --name myapp myImageName bash 

しかし、私はjava.io.FileNotFoundExceptionエラーを取得:私はイメージを構築した後 、私はコンテナを実行して、私のTempData.txtを含むボリュームをマッピング

ファイルを読み込んで解析できるようにするために、私のjavaドッキングされたアプリケーションでファイルを利用できるようにするにはどうすればよいですか?

あなたのご意見ありがとうございます!

+1

ファイルを '/ usr/DataSet'にマップしますが、'/usr/TempData'でファイルを検索します。 それらのうちの1つを変更すればうまくいくはずです –

+0

こんにちは、それは誤植でした。確かに私は同じディレクトリにマップします...私は投稿を編集しました! –

+0

別のUbuntuダミーコンテナでdockerコマンドをテストしました。ディレクトリ/ usr/DataSetが作成されますが、ファイルは使用できません。 –

答えて

0

私のホームディレクトリにファイルを置くと、この問題は解決されました。

関連する問題