ツール

Dockerコンテナを一から作る コマンドベースの分かりやすい解説!

Dockerをインストールする

Dockerコンテナを作るにも、まずはDockerをインストールしないことには何も始まりません。

今回Macを対象とさせていただきます。Windowsの方はごめんなさい・・・

バージョンは10.15。メモリは16GBとなります。

Docker新規アカウントの作成

それでは、まずDockerのアカウントを作成しましょう。

 

 

上記ボタンからDocker公式サイトに遷移し、sign upをクリックします。

docker

その後は各項目を埋めて登録しましょう!

docker




Dockerをダウンロードする

左側のStableをクリックしてダウンロードしましょう。

docker

ダウンロードしたファイルをクリックしてインストールを行います。

認証を要求されたらパスワードを入力してください。

その後、荷物を乗せた鯨のアイコンが現れれば無事インストールはOKです!

docker

Docker Desktop is running (緑色マーク)となっていれば起動しています。

Dockerコンテナを作成する流れ

では、Dockerコンテナを作るためにもターミナルへ移動しましょう!

移動ができたらどこのディレクトリでも良いので、下記コマンドを実行してみて下さい。

インストールしたDockerのバージョンが確認できるはずです。

確認ができましたら実際にコンテナの作成を行いましょう。

Dockerイメージの取得

今回使用するDockerイメージはCentOSです。

CentOSをベースにPHPなどのアプリケーション実行環境を整えることが最近多いように感じられますね!

それではコンテナの作成に移りましょう!

いやいや、ちょっと待てと。

そもそもDockerイメージとは何かを説明していませんでしたね。

Dockerイメージとは

コンテナのファイルシステム、設定のまとめ。

Dockerイメージは保存、再利用することができ、公式サイトであるDocker Hubには30万以上のイメージが公開されています。

と言ったように、Dockerイメージとはファイルシステム、設定のまとめであり、そのDockerイメージを元に仮想環境であるDockerコンテナは作成されるのです。

保存したDockerイメージは下記コマンドにて確認することができますよ!

 

ではDockerイメージについての説明も済んだので、実際に Dockerコンテナを作成しましょう。

先ほど紹介したDockerHubからイメージを探すのもよいのですが、今回はコマンドベースで利用するDockerイメージを探しましょう。

ずらっと何やら表らしきものが出てきましたね。

これがDockerHubで公開されているCentOSに関連するDockerイメージ達です。

今回は公式イメージを使用しましょう。

これでDockerイメージをDockerHubから取得することができました。

pullと聞くと何やらGitを思い出しますね。リモートからローカルにイメージを落としてきているので納得のpullです。




Dockerコンテナの作成

それでは本題のDockerコンテナの作成です。

  • -d : バックグラウンドでコンテナを実行
  • –name : コンテナに名前をつける
  • -it : コンテナにインタラクティブモードで入ってターミナルを起動

実際にコンテナが作られていることが確認できましたね!

これでコンテナの作成の流れは終了です。

どうですか? コマンドだけを淡々と実行していくなら5つ以内にコンテナを作ることができるのです。

思ったより簡単ではないでしょうか?

それでは作成したコンテナに接続してみましょう。

  • exec : コンテナの中で実行
  • -it :  コンテナにインタラクティブモードで入ってターミナルを起動

接続できたでしょうか?

これで本当にDockerコンテナの作成手順は終了となります。

最後に作成した練習用のコンテナを削除しましょう。

コンテナを削除するにはまずstopで停止する必要があります。

もし、起動するなら逆にstopをstartに変更して下さい。

これで作成したコンテナが消えていれば無事削除は完了となります。

Dockerはまだまだ奥が深く、理解するにはかなりの時間を要するでしょう。

しかし、理解することができれば、多くの現場で高い評価を受けるはずです。

また、Dockerにはdocker-composeと呼ばれる機能があります。

そちらについては下記記事で触れていますので、よろしければご覧下さい。

docker-compose の書き方! 分かりやすいDockerFileとの違いdocker-composeについての説明。分かりやすい書き方。各項目ごとに焦点を当て、初心者でも理解しやすい内容。DockerFileとの違い、Dockerコンテナを作成する流れについて。...

(今回の実行結果は過去に私が実行した結果を引用しているため、時系列があっていないことがありますので、ご理解の程よろしくお願いします。)

 

Pocket