Ownedmedia ウェブ制作に役立つコンテンツを発信中!

開発環境構築 2018.04.08

ローカル開発環境へのDocker導入の流れについてまとめ(イメージ・コンテナ編)

Tags: ,,,,

これまでの記事でDockerをインストールして、Docker Hubのアカウントも作成したところで次はイメージとコンテナと呼ばれるものを実際に作成していきたいと思います。過去記事でも説明していますが、Dockerはまずイメージを作成して、その中にコンテナを起動させることで仮想環境を実現しています。それでは早速進めていきたいと思います。

 

Dockerイメージ作成とコンテナ作成・起動

まずはサンプルとして「hello-world」というイメージを作成していきます。イメージはDocker Hubにある公式のものを使います。まずはDocker Hubにアクセスして、検索フォームからhello-worldのイメージを探します。そして詳細画面に下記の通りダウンロードのコマンドが記載されているかと思いますので、コマンドを入力し、実際にイメージを作成していきます。

$ docker pull hello-world

 

ダウンロードが完了したら自動的にイメージが作成されます。作成されたイメージは下記コマンドで一覧として確認することができます。

$ docker images
REPOSITORY   TAG     IMAGE ID          CREATED       SIZE
hello-world  latest  ****************  4 months ago  1.85kB

 

これでイメージが作成されましたのでコンテナを作成し起動することができるようになりました。引き続き下記コマンドでコンテナの作成と起動を行います。

$ docker run hello-world
Hello from Docker!
This message shows that your installation appears to be working correctly.

 

今回使用しているhello-worldのコンテナについては、上記のメッセージが表示されれば正常にコンテナが作成されていることになります。このメッセージの最後には

To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash

とあったのでこちらも試してみようと思います。これはdocker内にubuntuのOSイメージを作成し、その中のコンテナでいろんな操作ができるようになるというものです。これで下記のコマンドを実行してみます。

$ docker run -it ubuntu bash
〜 以下省略〜
root@****************:/#

 

ubuntuのイメージが無い場合はDocker Hubからイメージのインストールがはじまり、その後コンテナが作成され起動します。そうするとDockerのコンテナ内でubuntuのOS環境が出来上がります。そしてrunコマンドのオプションに-itを指定すると実際に操作ができるようになります。試しにlsコマンドで確認すると各ディレクトリがあるのがわかります。確認が終わったら一旦デタッチ(「ctrl + P」から「ctrl + Q」を続ける)を行いubuntuのセッションから切断します。

 

そして下記コマンドで起動中のコンテナ一覧の確認してみます。先ほど起動させたubuntuのコンテナが確認できるかと思います。

$ docker ps
CONTAINER ID      IMAGE   COMMAND      CREATED         STATUS         PORTS  NAMES
***************** ubuntu  "/bin/bash"  16 seconds ago  Up 16 seconds         *****************

 

起動中のコンテナがある場合はこちらに表示されますが、無い場合には何も表示されません。また下記コマンドで停止しているコンテナも確認することができます。

$ docker ps -a
CONTAINER ID      IMAGE        COMMAND   CREATED       STATUS                   PORTS  NAMES
***************** ubuntu       "bash"    10 hours ago  Exited (0) 10 hours ago         *****************
***************** hello-world  "/hello"  11 hours ago  Exited (0) 11 hours ago         *****************

 

コンテナは起動させるたびにどんどん溜まっていきますので、そんな時には下記コマンドで削除します。また複数のコンテナ削除もできます。まとめて削除したい時は一括でコンテナを削除することも可能です。削除するとコンテナのリストからも表示が無くなります。

// コンテナをID指定で削除
$ docker rm [CONTAINER_ID]

// 複数のコンテナをID指定で削除
$ docker rm [CONTAINER_ID] [CONTAINER_ID] [CONTAINER_ID]

// 作成済みのコンテナを一括で削除
$ docker rm $(docker ps -aq)

 


 

これでDockerのイメージ作成からコンテナ作成・起動の流れがわかりました。今回は確認用にサンプルのイメージを使いましたが、次からはウェブサーバーやデータベースサーバーのイメージを使って、実際にウェブの開発環境を整えていきたいと思います。

 

(参考にさせて頂いたサイト)
Dockerコンテナの作成、起動〜停止まで
[docker] コンテナを一括削除

この記事を書いた人

オガワ シンヤ

DesignSupply.代表 / ディレクター・ウェブデザイナー・フロントエンドエンジニアをやっています。「ウェブとデザインでヒト・モノ・サービスを繋げ新しい価値を生み出す」をコンセプトに日々奮闘中!制作中はチョコレートが欠かせない三十路Webクリエイター。

  • Twitter

コメントフォーム

記事に関するご質問やご意見などありましたら下記のコメントフォームよりお気軽に投稿ください。なおメールアドレスは公開されませんのでご安心ください。

内容に問題なければ、お名前・ハンドルネームとメールアドレスを入力いただき、下記の「コメントを送信」ボタンを押してください。

CAPTCHA


この記事もよく読まれています

Scroll to Top
ご質問・ご相談はありませんか ?