本文へスキップ
BecomeCoder
ブログ一覧コース一覧

Docker使い方入門|初心者がdocker runでコンテナを動かすまで

#Docker#初心者#入門#docker run

結論:Dockerは「イメージを取ってきて(pull)→コンテナとして起動する(run)」の2ステップさえ分かれば、最初の一歩は誰でも動かせます。しかもインストール不要でブラウザ内のシミュレータを使えば、今この瞬間に docker run を打って結果を確認できます。

Dockerの「使い方」でまず押さえること

Dockerの学習でつまずく人の多くは、「イメージ」と「コンテナ」の違いが曖昧なまま docker run を打って混乱しています。ここは最初に整理しておく価値があります。

この関係は Wiki のコンテナDockerの項目でも図解しているので、用語の意味だけ先に確認したい人はそちらもどうぞ。

手を動かして体で覚えたい場合は、Dockerコース「Dockerとは」「イメージとコンテナ」がこの違いを最初に扱っています。このコースは第1章の導入(読み物)を除き、第2章以降はブラウザ内のシミュレートDocker端末で実際にコマンドを打って進められます。インストールも会員登録も不要です。

docker run で最初のコンテナを動かす

Dockerの動作確認としてもっとも定番なのが docker run hello-world です。このコマンド1つで、Dockerの基本の流れがすべて体験できます。

  1. ローカルに hello-world イメージがあるか探す
  2. 無ければ Docker Hub から pull(ダウンロード)する
  3. そのイメージからコンテナを作って起動する
  4. コンテナが出力したメッセージを画面に表示する
  5. 仕事を終えたコンテナは**終了(exited)**する

つまり docker run は「イメージが無ければ取ってきて、コンテナを作って動かす」までを一気にやってくれるコマンドです。この一連の流れは、「はじめてのコンテナ」でそのまま端末に打ち込んで確認できます。

もう少しコンテナの中身を意識したいときは、docker run <イメージ> [コマンド] という形で、コンテナの中で実行するコマンドを指定できます。たとえば docker run alpine echo "Hello from a container" は、軽量Linuxである alpine のコンテナを作り、その中で echo を実行し、終わったらコンテナも終了する、という流れです。コンテナは「1つのプロセスを動かすための箱」だと考えると理解しやすくなります。詳しい仕組みは「docker run ― イメージからコンテナを起動する」で解説しています。

イメージそのものを個別に扱いたい場合は、「docker pull ― イメージを取ってくる」「docker images ― 手元のイメージを一覧する」も合わせて動かしてみてください。

コンテナ 動かし方の続き:確認・停止・片付け

docker run で起動したあと、初心者が次に困るのは「今どんなコンテナが動いているか分からない」「止め方・消し方が分からない」という点です。ここも実在の一連の流れで押さえられます。

この一連の流れ(第3章「コンテナを動かす・止める」)まで動かせば、docker run で起動したコンテナを自分でコントロールできるようになります。

自分でイメージを作る(Dockerfile / docker build)

既存のイメージを動かすだけでなく、「自分のアプリをDocker化したい」と思ったら、次は Dockerfile の出番です。Dockerfileは、イメージの作り方を記したテキストの設計図で、これをもとに docker build でイメージを焼き、docker run で動かします。

ここまで(第4章)もすべてブラウザ内で実行できます。「Dockerfileを書いてbuildして自分のイメージを動かす」という一連の流れを、環境構築なしで体験できるのはこのコースの強みです。

つまずきやすいところ

初心者がDockerでよく引っかかるのは、次のようなポイントです。

次に読む

← ブログ一覧に戻る