最近仕事でdockerをいじることになりました。良い機会なので、プライベートの開発環境もdockerで構築し直そうとチャレンジ。実際に使ってみるとVagrant以上に簡単でビックリしました。次回以降スムーズに扱えるよう、ナレッジをまとめます。

とりあえずのハローワールド

下記ホームページから「Get started with Docker」ボタンをクリック。Community Editionをダウンロードしてインストールします。

https://docs.docker.com/

インストール後、とにかく使ってみたいという場合は「Run Docker Anywhere」の項目から、対応OSのドキュメント置き場へ飛ぶといいでしょう。ドキュメントも非常に整っていて、とっても親切。これがドッカークオリティ。

 

イメージを引っ張ってくる

Docker Hubに主要なOSやアプリのリポジトリが公開されています。

https://hub.docker.com/explore/

 

とりあえずCentOSとUbuntuを利用してみます。ターミナルを起動して下記コマンドを実行。

docker pull centos
docker pull ubuntu

 

ダウンロードが完了したら下記コマンドでイメージが作られているかを確認します。

docker images

 

コンテナを立ち上げる

引っ張ってきたイメージを元にコンテナを立ち上げます。WordPressなど、Apacheの利用を前提にしたコンテナにしようと思い、80番にポートフォワードしました。うまくいくとコンテナが起動し、勝手にログインしてくれます。

docker run -it -p 80:80 centos:latest /bin/bash

 

すでに80番がしようされている場合はエラーが発生するので、あらかじめ処理しておきます。簡単な調査方法は下記ページにまとめました。

Dockerで80番へポートマッピングした際に起きたエラーについて

 

コンテナからのログアウトと次回以降のログイン方法について

何も考えずにexitするとコンテナが停止してしまうので注意です。ctrl+Pとctrl+Qでログアウトするのがよろしいかと。docker execでログインすると、コンテナを停止することなくexitが使用できます。

  • ログアウト(コンテナは停止する)…exit
  • ログアウト(コンテナは起動したまま)…ctrl+P か〜ら〜の ctrl+Q
  • ログイン方法…docker attach [ContainerID]
  • ログイン方法(おすすめ)…docker exec -it [ContainerID] /bin/bash

まとめ

dockerの導入からコンテナの立ち上げまでやりました。できればCentOSとUbuntuのコンテナでそれぞれApacheを入れて動かしたいのですが、ポートフォワードをどうすればいいのか悩み中。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*