やりたいこと
コンテナ上にrubyのファイルをコピーし、コンテナで実行してその実行結果をresultディレクトリ
と紐づけられたvol1
というボリュームに保存してホスト側で扱えるようにしたいです。
ファイルなど
test.rb
1puts "Hello Docker"
Dockerfile
1FROM ruby:latest 2 3COPY test.rb test.rb 4 5WORKDIR result 6 7RUN touch result.txt 8 9CMD ["ruby", "../test.rb", "&>", "result.txt"]
$ docker build --tag ruby-image1 . $ docker run --name ruby-container1 -v vol1:/result ruby-image1
こうすると、result/result.txt
に標準出力が書き込まれ、resultディレクトリはvol1と紐づけられているため、ホスト側でresult.txtに書き込まれているのを確認できるはずですができません。
色々試してみたのですが、RUN result.txt
は実行されて、新しいファイルがvol1に保存されているのは確認できたので、CMD ["ruby", "../test.rb", "&>", "result.txt"]
に原因があるっぽいのですが、原因が思い当たる方教えていただけるとありがたいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。