■1.Dockerってすごいの?
サーバ構築などが非常に簡単。たとえば、以下
https://knowledge.sakura.ad.jp/13265/

ここにあるように、1行でWebサーバが構築できてしまう。

docker run --name some-nginx -d -p 8080:80 nginx

もちろん、その前にDockerをインストールしてサービスを起動する必要がある。それにしても楽だ。

■2.Dockerについて
実際に運用するサーバOSと開発をするクライアントOSではもちろんOSやミドルウェアのバージョンが異なる。
→Dockerなら、開発環境をそろえることができる。
しかも、「簡単に」という点が特徴。
Build once, run anywhereと言われる。つまり、どこでも使える。

・コンテナと呼ばれる仮想化技術
・説明は、いろいろな本やサイトを読んでもらえばいい。特徴は、ファイルで管理できる。→軽量
・複数人で同じ環境でシステムを構築できる。
・イメージファイルそのものは、Docker HUBなどに置かれている。なので、テキストファイルで指定するだけで、
イメージファイルを共有する必要が無い。
・Docker Composeが便利だと思う。
複数のアプリケーションをDockerfileで定義
docker-compose.ymlファイルで定義し、
docker-compose upで一斉に環境を起動できる。
http://docs.docker.jp/compose/overview.html

■Dockerに関する用語
(1)いくつかある
Docker pull でイメージを取得する
 逆に docker commitでイメージを送る
docker run→Dockerイメージを起動させる

(2)dockerのイメージと、コンテナ
イメージの上にコンテナがあると考えよう。以下の解説がわかりやすい。
複数の開発環境があるときに、コンテナでは、イメージを組み合わせるだけで利用できる。たとえば、ApacheとMySQLのコンテナ、違うコンテナではApacheとSQLサーバという感じ。VMだと、それぞれのイメージにApacheを入れる必要があったが、dockerのコンテナでは、組み合わせるだけでいい。
https://blog.codecamp.jp/programming-docker-image-container

■インストールなど
(1)準備
①gitを入れる
# yum -y install git

②Dockerを入れる
・インストール
# sudo yum -y install docker

・参考までにversionを確認しておこう(うまくインストールできたかの確認も込めて
# docker --version

・dockerの起動
# systemctl start docker
※以下サイトにあるユーザ追加もしたが、必須かは不明 →不要だった。
https://qiita.com/uhooi/items/f8c67a9e716a226e28cd

③Docker Composeをインストール
以下サイトの「Linux」のタブを開く
https://docs.docker.com/compose/install/
curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose