Dockerのコアコンセプトとインストール(2)

3948 ワード

Dockerは3つのコアコンセプトに分かれています.
1.ミラー(Image)2.コンテナ(Container)3.倉庫(Repository)はこの3つの概念を理解し、Dockerのライフサイクル全体をスムーズに理解することができます.
2.1コアコンセプト
Dockerミラー
Dockerミラーは、仮想マシンミラーと同様に、ファイルシステムを含むDockerエンジン向けの読み取り専用テンプレートとして理解できます.たとえば、1つのミラーには、Ubuntuミラーと呼ばれる完全なubuntuオペレーティングシステム環境のみを含めることができます.ミラーは、nginxミラーと呼ばれるnginxアプリケーション(またはユーザーが必要とする他のソフトウェア)をインストールすることもできます.
ミラーリングはDockerコンテナを作成するための基礎です.バージョン管理とインクリメンタルファイルシステムにより、Dockerは既存のミラーを作成して更新する非常に簡単なメカニズムを提供し、ユーザーはすでに作成したアプリケーションミラーをネット上からダウンロードし、簡単なコマンドで直接使用することができます.
Docker容器
コンテナはミラーから作成されたアプリケーション実行インスタンスで、起動、開始、停止、削除できますが、これらのコンテナは互いに分離され、互いに表示されません.コンテナは、rootユーザー権限、プロセス空間、ユーザー空間、ネットワーク空間などを含む簡易版linuxシステム環境、およびその中で実行されるアプリケーションをパッケージ化したアプリケーションボックスと見なすことができます.ミラー自体は読み取り専用です.コンテナがミラーから起動されると、Dockerはミラーの最上位に書き込み可能なレイヤを作成し、ミラー自体は変更されません.
Doker倉庫
Dokerウェアハウス(Repository)はコードウェアハウスに似ており、Dockerがミラーファイルを集中的に格納する場所である.Dockerウェアハウスとレジストリを混同した資料があり、厳密に区別されていない場合があります.実際には、レジストリサーバは倉庫を保管する場所で、複数の倉庫が保管されています.各倉庫には、複数のミラーファイルが含まれ、異なるタグで区別されることが多いミラーのクラスが格納されています.Docker倉庫は、格納されているミラーが公開されているかどうかによって、公開倉庫(Public)とプライベート倉庫(Private)の2つの形式に分けることができます.現在、最大の公開倉庫はDocker Hubで、ユーザーがダウンロードできる膨大なミラーが保管されています.国内公開の倉庫はDokcer Poolなどがあり、安定した国内訪問が可能です.もちろん、ユーザーが自分のミラーファイルを公開的に共有したくない場合は、Dockerはローカルネットワーク内で自分でしかアクセスできないプライベートウェアハウスを作成することもサポートします.ユーザーが独自のミラーを作成した後、Pushコマンドを使用して指定した共有またはプライベートウェアハウスにアップロードできます.このようにユーザが次回別の機器でこのミラーを使用する場合には、それを倉庫からPullするだけでよい.
Dockerが倉庫を利用してミラーを管理する設計理念はGitとよく似ていることがわかる.
2.2 Dockerのインストール
Dockerは、Ubuntu、CentOS、Windwos、MacOSシステムなど、主流のオペレーティングシステムプラットフォームでの使用をサポートします.もちろん、linuxシリーズプラットフォームではオリジナルでサポートされており、使用体験がより良いです.ここではCentOS 7シリーズを使用して例を説明します.
DockerはCentOS 6以降のバージョンをサポートします.CentOS 6システムでEPELライブラリを使用してDockerをインストールできる場合は、EPELソースを具体的に追加することは言うまでもありません.コマンドは次のとおりです:yum install docker-ioCentOS 7システムでは、CentOS-ExtrasソースにDockerが内蔵されているため、以下のコマンドを直接使用してインストールできます.
[root@daquan ~]# yum install docker
Loaded plugins: fastestmirror, langpacks
epel                                                                                                                                                | 4.3 kB  00:00:00     
extras                                                                                                                                              | 3.4 kB  00:00:00     
nginx                                                                                                                                               | 2.9 kB  00:00:00     
os                                                                                                                                                  | 3.6 kB  00:00:00     
updates                                                                                                                                             | 3.4 kB  00:00:00     
(1/2): epel/7/x86_64/primary_db                                                                                                                     | 4.6 MB  00:00:00     
Loading mirror speeds from cached hostfile
Package 2:docker-1.12.6-11.el7.centos.x86_64 already installed and latest version
Nothing to do

ここにインストールしました.
Dockerのバージョンを表示すると、まだ1.12バージョンであることがわかります.
[root@daquan ~]# docker version
Client:
 Version:         1.12.6
 API version:     1.24
 Package version: docker-common-1.12.6-11.el7.centos.x86_64
 Go version:      go1.7.4
 Git commit:      96d83a5/1.12.6
 Built:           Tue Mar  7 09:23:34 2017
 OS/Arch:         linux/amd64

Server:
 Version:         1.12.6
 API version:     1.24
 Package version: docker-common-1.12.6-11.el7.centos.x86_64
 Go version:      go1.7.4
 Git commit:      96d83a5/1.12.6
 Built:           Tue Mar  7 09:23:34 2017
 OS/Arch:         linux/amd64

起動docker:systemctl start docker.service現在CentOSシステムでDockerソフトウェアを更新するには2つの方法があります.1つは、自分でソースコードをコンパイルしてインストールすること、2つはバイナリファイルをダウンロードして更新することです.