質問: docker初心者です。 Javaに限らず、なんでも良いのですが、 現在最新版のJavaを試したくて、dockerhubからopenjdkの最新版をビルドしました。 この時、どのようにjavaを実行すればよいのか、正しい方法がわかりません。 方法1 docker内でjavaを実行 -------------------- openjdkのコンテナに接続し、javaを実行する方法を思いつきました。 docker run -it .... sh とすれば接続でき、javaコマンドもただけるのですが、vimとうのエディタがコンテナ内に入っていないので、使えません(ま、入れればいいんですが) 方法2 execからjavaコマンドを実行 ---------------------- docker exec ... javaというふうにホストOSにあるjavaファイルに向けてjavaコマンドを実行する?方法です。 この方法ですが、execが使える条件ですが、コンテナが起動中であることです。 ですが、docker run -dとしてもopenjdkのコンテナのプロセスは即座に終了してしまい使えませんでした。 javaが常駐プロセスとなっていないので当たり前ですが。 ※そもそも、なにか使い方を間違えているような気がします。 いろいろとご指摘頂ければ幸いです。
回答: dockerの使いどころってサーバー系のプロセス (Databaseとか)を立ち上げたり、テスト時に一時的にビルドプロセスの一部を実行するのに使用したりするのが適しているのではないかと思います。 開発環境として仮想OSのイメージで使用するならば Vagrant使ってVirtualbox上に CentOSやUbuntuのOS立てたほうがエディタなども入れられるし良いのではないでしょうか?