Dockerのコアコンセプトと構成

キーコンセプト

1.Dockerイメージ

Dockerこの画像は仮想マシンの画像に似ており、読み取り専用のテンプレートとして理解できます
ミラーリングはDocker、コンテナのベースを作成することです。
バージョン管理とインクリメンタルファイルシステムによりDocker、既存のミラーを作成および更新するための非常にシンプルなメカニズムが提供されます。ユーザーは、準備されたアプリケーションミラーをインターネットからダウンロードして、直接使用することもできます。

2. Docker 容器

Dockerコンテナは軽量のサンドボックスに似ており、Dockerコンテナを使用してアプリケーションを実行および分離します
コンテナは、イメージから作成されたインスタンスを実行するアプリケーションです。開始、開始、停止、および削除が可能であり、これらのコンテナーは互いに分離されており、互いに見えません。

3.Dockerウェアハウス

Docker倉庫類似コードリポジトリはDocker 、画像ファイルを保存するための一元化された場所です
保存されたイメージがパブリックに共有されているかどうかに応じて、Dockerリポジトリはパブリックリポジトリプライベートリポジトリの2つの形式に分けることができます

ユーザーが自分のイメージを作成した後、pushコマンドを使用して、指定されたパブリックまたはプライベートウェアハウスにイメージをアップロードできます。このようにして、ユーザーが次に別のマシンでイメージを使用するときは、ウェアハウスからイメージをプルするだけで済みます。

Dockerエンジンをインストールする

現在、ドッカーはサポートのような複数のサービスドッカーエンジンドッカーハブ、およびドッカークラウドを

  • Dockerエンジン:デスクトップシステムまたはクラウドプラットフォームへのDockerのインストールのサポートを含み、企業にシンプルで安全かつ柔軟なコンテナクラスターのオーケストレーションと管理を提供します。
  • Docker Hub:パブリックまたはプライベートのイメージウェアハウスを提供できる公式のクラウドホスティングサービス。
  • DockerCloud:コンテナの展開と管理を完了し、コンテナ化されたプロジェクトを完全にサポートでき、CIおよびCD機能を備えた公式のコンテナクラウドサービス。

CentOSにDockerをインストールする

まず、ソフトウェアソースの追加を容易にし、devicemapperストレージタイプをサポートするために、次のソフトウェアパッケージをインストールします。

sudo yum update
sudo yum install -y yum-utils device-mapper-persistent-data lvm2 

Dockerの安定バージョンのyumソフトウェアソースを追加します。

sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

次に、yumソフトウェアのソースキャッシュを更新し、Dockerをインストールします。

sudo yum update
sudo yum install -y docker-ce

最後に、Dockerサービスが正常に開始することを確認します。

sudo systernctl start docker

Dockerサービスを構成する

Dockerコマンドを使用するたびに特権IDに切り替える必要をなくすために、現在のユーザーをインストールに追加できます。

  • 自動的に作成されたdockerユーザーグループのコードは次のとおりです。
sudo usermod -aG docker USER NAME
  • ユーザーがグループ情報を更新すると、ログアウトして再度ログインした後に有効になります。

Dockerサービスが開始すると、実際には、さまざまな起動パラメーターをサポートするdockerdコマンド呼び出されます。したがって、ユーザーは、次のコマンドなどのdockerdコマンドを実行してDockerサービスを直接開始し、Dockerサービスを開始し、デバッグモードをオンにして、ローカルポート2376を監視できます。

dockerd -D -H tcp://127.0.0.1:2376

これらのオプションは、/ etc / docker /パスの下のdaemon.jsonファイルに書き込み、dockerdサービスの開始時に読み取ることができます。

{
	"debug": true,
	"hosts":[" tcp://127.0.0 . 1:2376 ”]
}

もちろん、オペレーティングシステムはDockerサービスもカプセル化します。例として、Upstartを使用してスタートアップサービスを管理するUbuntuシステムを取り上げます。Dockerサービスのデフォルトの構成ファイルでは、サービスのスタートアップパラメータIetc/default/dockerを変更することDOCKER OPTS変更できます。たとえば、Dockerサービスを開始させます。ネットワークポート2375の監視:

DOCKER_OPTS="$DOCKER_OPTS -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock”

変更後、serviceコマンドを使用してDockerサービスを再起動します。

sudo service docker restart

CentOSやRedHatなどのシステムの場合、サービスはsystemdを介して管理され、構成ファイルのパスは/etc/systemd/system/docker.service.d/docker.confです。構成を更新した後、systemctlコマンドを使用してDockerサービスを管理する必要があります。

sudo systemctl daemon-reload
sudo systemctl start docker.service

さらに、サービスが正常に機能していない場合は、Dockerサービスのログ情報を表示して問題を特定できます。たとえば、ログファイルがRedHatシステムにあり、/var/log/messagesコマンドをUbuntuまたはCentOSシステムで実行できますjournalctl -u docker.service
毎回Dockerサービスを再起動した後、Docker情報(docker infoコマンド)をチェックして、サービスが正常に実行されていることを確認できます。

おすすめ

転載: blog.csdn.net/weixin_44826356/article/details/109298445