exec」を混同されている方を見かけます。コンピュータ業界では、runとexec(execute)はどちらも「実行する」という意味で使われますので、違いが分かりにくいと思います。私もDockerの勉強を始めたころは、上記の2つのコマンドをたまに間違えてつかって、良くエラーになってました。exec」の違いを明確にすることを目的としております。run」コマンドは一言でいいますと、コンテナを作成して起動するコマンドです。以下のコマンドは、ベースイメージとしてCentOS公式イメージを使用してコンテナvmtestを作成して、そのコンテナを起動するまでを行います。initつまり、次の2つのコマンドを1つのコマンドで実現できるコマンドということになります。run」コマンドは無くても問題ないことになります。run」コマンドを使った方が便利だと思います。run」コマンドで行ってます。exec」コマンドは一言でいいますと、起動中のコンテナ内で、指定したコマンドを実行するコマンドです。exec」コマンドを使うためには、対象となるコンテナが起動されている必要があります。exec」コマンドを使用します。vmtest2コンテナを起動します。init次に、起動したコンテナvmtest2内で「ls」コマンドを実行して、コンテナvmtest2内の/etcディレクトリの内容を出力させます。/etc以下のように、コンテナvmtest2内の/etcディレクトリの内容が出力されます。execコマンドの使い方(実例付)」でご紹介しておりますので、そちらもご利用頂ければと思います。exec」の違いはご理解いただけたと思います。Dockerは数ある仮想化技術のひとつなのですが、良く利用されているVMwareやHyper-Vなどのホスト(ハイパーバイザ)型仮想化技術とは違う、コンテナ型仮想化技術ですので、慣れるまでは戸惑いがあると思います。私も慣れるまでは大変でした。run」コマンドは、ホスト型仮想化技術で例えますと、仮想マシンを起動するという部分にあたります。exec」コマンドは、同様にホスト型仮想化技術で例えますと、起動した仮想マシン上でプログラムを実行するという部分にあたります。このようにお考えになると、ご理解し易いのではないかと思います。本記事で、Dockerについての理解が深まって頂けたら幸いです。最後までお読みいただきありがとうございました。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。テニス、作品鑑賞(映画、アニメ、ドラマ、絵画など)、讃岐うどん食べ歩き。コンピュータ業界に身を置く中年おやじです。世の中にはまだ自分が知らない情報があふれていて、知っているつもりでも全体の半分も知らないことがいっぱいあります。見つけた情報はGoogleKeepにメモる毎日です。ある日、自分が良いと思うことは、同じように感じる方も、数は少ないかもしれないけどいるはず、と思いまして、そのことが本サイト「めもたんす」を作るきっかけとなりました。自分がいいなと思ったことを記事にまとめたサイトです。technology.。