‫さて､ 今回はこのセクションの最初の講義ですので､ このセクション全体がどのようなものか､ そしてそれがコンテナであるのかを簡単に説明したいと思います｡
‫コンテナはDockerツールキットの基本的な構成要素であり､ これがこれから学ぶ最初のことの1つです｡
‫コンテナとは何か､ どのように実行するか､ VMとどう違うか､ その他コンテナの基本的な機能を学ぶまでは､
‫イメージを構築したり､ 高度なことをするつもりはありません｡
‫そこでまず､ Dockerの最新版があり､ それが動作していることを確認することです｡
‫この講義を終えたら､ 他の講義でコンテナの起動方法､ コンテナのさまざまな側面の管理方法､
‫つまり起動､ 停止､ 削除､ 作成...について説明します｡
‫というようなものです｡
‫そして､ その全てにNginxを使用する予定です｡ Nginxは本当に基本的なウェブサーバーで､
‫DockerコマンドやDockerコンテナのやり方を学ぶのに簡単に使えそうです｡
‫この後､ ネットワークの基本に飛び込んでいきます｡ Dockerのネットワークと､ コンテナ同士がどのように会話しているのかを学びます｡
‫そして､ このセクション全体では､ 最新バージョンのDockerをインストールし､ それが正しく動作していることが唯一の要件となります｡
‫この講義では､ それが正しくセットアップされていることを確認します｡
‫Dockerのコマンドラインを正しく動作させるためには､ お使いのOSに適したターミナルを使用していることを確認する必要があります｡
‫私はMacを使うつもりなので､ Macでよく使われているターミナルかiTerm2のどちらかを使うことができます｡
‫それから､ Windowsでは､ Docker for WindowsであればPowerShellを使うことになります｡
‫Docker ToolBoxの場合は､ Docker ToolBoxに付属しているQuickStart Terminalを使用することになります｡
‫また､ Linuxであれば､ 自分の好きなLinuxのシェルを使うだけです｡
‫これらはすべて､ 前項でお話しした､ あなた自身のオペレーティングシステムのセットアップのためのものです｡
‫もし､ さらに質問があれば､ これらのビデオを見てください｡
‫でも､ さっそく始めましょう｡
‫最初のコマンドはdocker versionです｡ このコマンドは､ クライアント（先ほど使用したCLI）とサーバー（エンジンとも呼ばれる）のバージョンを返すだけです｡
‫Windowsでは通常サービスと呼ばれ､ MacやLinuxでは通常デーモンと呼ばれます｡
‫ここで起きているのは､ Dockerコマンドラインが実際に私のマシンのサーバーと通信し､
‫その値やクライアントの値を返しているのです｡
‫理想は同じであることですが､ 同じバージョンである必要はありません｡
‫そして､ できるだけ最新版であってほしいということです｡ 1.などの旧バージョンをお持ちの場合 12または1｡ 13では､ 最新バージョンにしかない新機能をたくさん使うので､
‫前のセクションに進んで適切なバージョンをインストールすることを絶対に確認したい｡
‫サーバーから情報が返ってきたということは､ 私がサーバーと会話できて､ それが正しく動作していることを証明しているのです｡
‫もしエラーが出た場合は､ sudoでdockerのバージョンアップを行う必要があります｡
‫もしあなたがLinuxを使っているなら､ あるいはDockerが実際に動いていないかもしれないので､ 前のセクションのセットアップ・ビデオを見て､
‫Dockerが正しく動いていることを確認する必要があるでしょう｡
‫では､ Dockerエンジンからもう少し情報を引き出してみましょう｡
‫docker infoを実行すると､ バージョンだけでなく､ 様々なものが返ってきます｡ エンジンの設定やセットアップに関する詳細な情報を得ることができます｡
‫その中には､ 実行中のコンテナの数､ あるいはDockerに保存しているイメージの数など､
‫明らかなものもあります｡
‫でも､ この他の多くのことは､ 今となっては意味がないかもしれないし､ それでいいんです｡
‫このコースを通して､ たくさんのことを学んでいきます｡
‫さて､ Dockerで使えるコマンドにはどんなものがあるのか､ 気になるところですよね｡
‫そして､ dockerと入力してリターンを押すだけで､ そのリストが表示されます｡
‫この下の方に長いリストが表示されます｡
‫実はこれは完全なリストではなく､ この上の方に､ この管理コマンドがあることにお気づきでしょうか｡
‫そこで2017年の初めから､ Dockerは､ このリスト -- docker spaceとコマンドを入力するところ
‫-- にたくさんのコマンドが降りてきているので､ これらすべてのコマンドを簡単に整理する方法を作る必要があることに気づきました｡
‫そこで管理コマンドを作り､ docker spaceに管理コマンド､ そしてサブコマンドという形式を作り出しました｡
‫このコースでは､
‫その両方を少しずつ使っていこうとしているのがおわかりいただけると思います｡
‫主にDockerの新型を使用する予定です｡
‫ここではcontainer runの例で､ このコマンドの新しい形式を説明します｡
‫しかし､ Dockerプロジェクトが始まった当初から､ そのコマンドを入力するのは通常docker runでした｡
‫そのコマンドを実行するために､ docker container runが新しい方法となったのは､ つい最近のことです｡
‫Dockerの素晴らしいところは､ 後方互換性に非常に重点を置いていることです｡
‫そのため､ docker の実行はおそらく永久に機能しますが､ 新しく取得したコマンドはこの docker
‫コマンドの値を使用しません｡
‫docker space コマンドスペース サブコマンドの値を使用することになります｡ そこで､ これらのコマンドを使うたびに､ それが何であるかを説明し､
‫そのコマンドにそのオプションがあるかどうかによって､ おそらく古いやり方と新しいやり方をお見せします｡
‫だから､ このコースを進めていくうちに､ だんだん分かってくるんです｡
‫さて､ 非常に短い講義でしたが､ とてもシンプルな内容でしたので､ これらのコマンドを簡単に復習してみましょう｡
‫docker versionコマンドは､ 私が新しいDockerシステムでいつも最初に使うコマンドです｡ クライアントがエンジンと対話できること､
‫そして私が期待するバージョンを実行していることを確認するためです｡
‫次に､ docker infoは､ 私が期待するように設定されていることを確認するために､ エンジンから多くの設定値を与えてくれます｡
‫そして最後に､ コマンドラインの構造についてお話しました｡ 昔のやり方は､ 今でも通用するのです｡
‫ですから､ ここ4年以上前からある古いコマンドについては､ 今でもdockerコマンドと､ それからオプションで動きます｡
‫しかし､ 今後の新しいコマンドのために､ Dockerはdocker spaceコマンドスペースサブコマンドで管理コマンドの新しいモデルを作っているのです｡
‫Dockerでよく使うコマンドの1つであるdocker
‫runを例にとると､ 古い方法ではdocker runですが､ 新しい方法のdocker container runでも動作します｡
‫そして､ これらのコマンドをどのように使うかは､ 古い方法を使うか､ 新しい方法を使うか､ どちらを使うか決めればよいのです｡