Docker EngineのCentOSインストールの詳細な実践的な説明(コマンドの説明、類推、拡張を含む)

読む前の注意事項:
1。操作は黒いコードブロックを実行するだけで済みます
2.青い四角と青いリンクの内容は理解を助けるためのコメントです


学習目標:

CentOSにDockerEngineをインストールし、各ステップの意味を理解し、それを理解し、理由理解する


学習内容:

1.yumコマンドを実行して依存パッケージをインストールします
2.コマンドを実行してyumソフトウェアソースを追加し
ます3.Dockerをインストールします4.Dockerを
起動し
ます5.Dockerユーザーグループを作成します
6.Dockerが正しくインストールされているかどうかをテストします
7.Dockerをに設定します自動的に開始


準備オーケー:

さまざまな合理化された信頼できるチュートリアルWebサイト(それぞれdocker公式チュートリアル、gitbookチュートリアル、csdnチュートリアル):
https ://docs.docker.com/engine/install/centos/#prerequisites
https://yeasy.gitbook.io/docker_practice/ install / centos
https://edu.csdn.net/course/play/26952/347323

システムでは、
Dockerが64ビットバージョンのCentOS 7/8をサポートする必要があり、カーネルバージョンは3.10以上です。CentOS 7はカーネルの最小要件を満たしていますが、カーネルバージョンが比較的低いため、一部の機能(overlay2ストレージレイヤードライバーなど)を使用できず、一部の機能が安定しない場合があります。


利用可能なDockerを表示する

yum list docker-ce -- showuplicates | sort -r

デフォルトでは、yumlistまたはyuminstallを使用すると、yumはデフォルトで最新バージョンを選択します。
特定のバージョンの特定のソフトウェアパッケージをインストールして、既存の環境のソフトウェアパッケージバージョンと一致させる必要がある場合は、showduplicatesを使用する必要があります。
yum list docker-ce --showduplicateは、すべてのバージョンをリストできます。
http://www.mamicode.com/info-detail-2460680.html

sort -rは、数値を文字として
ソートしますsort -n sort -nrは、数値全体に従ってソートし
ますhttps://blog.csdn.net/znzxc/article/details/89534234

古いバージョンをアンインストールします。
古いバージョンのDockerはdockerまたはdocker-engineと呼ばれます。次のコマンドを使用して、古いバージョンをアンインストールします。

$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

正式なインストール手順:

警告:Docker YUMソースを構成せずに、yumコマンドを使用してDockerを直接インストールしないでください。

1. yumコマンドを実行して、依存パッケージをインストールします

$ sudo yum install -y yum-utils

yum-utils与yum-config-manager


2.次のコマンドを実行して、yumソフトウェアソースを追加します。

$ sudo yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
$ sudo sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo

yum-config-manager--add-repoは、ダウンロードアドレスの追加を担当するコマンドです。
リポジトリファイルは、ソースファイル(リポジトリ)と呼ばれることが多いものです
。CEバージョン:通信
eeバージョン:エンタープライズ
•Dockerエンジンが変更されましたDocker CE(Community Edition)へCLIクライアント、バックグラウンドプロセス/サービスおよびAPIが含まれています。ユーザーは以前と同じ方法でそれを取得します。
•DockerデータセンターがDockerEE(Enterprise Edition)に変更されました。追加の支払い製品とサポートがDockerの3つの価格階層に追加されました

sed -i's / original string / new string / '/ home / 1.txt [最初に一致する置換]
sed -i's / original string / new string / g' / home / 1.txt [グローバル一致置換]

国内ネットワークの問題を考慮して、国内ソースを使用することをお勧めします。コメントで公式ソースを確認してください。

公式ソース
$ sudo yum-config-manager --add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

Dockerのテストバージョンが必要な場合は、次のコマンドを実行します。

$ sudo yum-config-manager --enable docker-ce-test

3.Dockerをインストールします

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

$ sudo yum install docker-ce docker-ce-cli containerd.io

注:docker-ce- <VERSION_STRING> docker-ce-cli <VERSION_STRING>は、指定されたバージョンを追加でき
ます•すべての管理作業を完了するための部分であるdocker-ce-コンテナーデーモン
•デーモンの制御に使用されるdocker-ce-cli- CLI(コマンドラインインターフェイス)コマンドラインツール。リモートDockerデーモンを制御する場合は、個別にインストールでき
ます。•containerd.io-OS APIと対話するデーモン(この場合、LXCはLinuxコンテナーの略)。 fromは基本的にDockerをOSから分離し、Docker以外のコンテナマネージャーにコンテナサービスを提供し

ますhttps://www.reddit.com/r/docker/comments/dsr6y2/containerdio_vs_dockercecli_vs_dockerce_what_are/

インストールされているDocker関連ソフトウェアを確認します。
yum list installed | grep docker
ここに画像の説明を挿入


4.Dockerを起動します

$ sudo systemctl start docker

Linuxでのsystemctlの詳細な理解と一般的なコマンド

•Linuxサービス管理サービスとsystemctlsystemdの2つの方法は、Linux
システムの最新の初期化システム(init)です。その機能は、システムの起動速度を上げ、できるだけ少ないプロセスを開始し、できるだけ多くのプロセスを同時に開始することです。可能。
systemdに対応するプロセス管理コマンドはsystemctlです。

一般的なsystemctlコマンド
1.バージョン番号の表示systemctl–-バージョン
2.管理サービス(ユニット)systemctlは、単一のユニットを管理するためのサブコマンドのグループを提供します。コマンド形式は次のとおりです。systemctl[command] [unit]コマンド
には主に次のものが含まれます。
start:次のユニットをすぐに起動します。
停止:すぐに次のユニットを閉じます。
再起動:すぐに閉じた後、後続のユニットを起動します。つまり、停止を実行してから起動します。
リロード:ユニットを閉じずに、設定ファイルをリロードして設定を有効にします。
enable:次回電源を入れたときに次のユニットが起動するように設定します。
disable:次回電源を入れたときに次のユニットが起動しないように設定します。
status:後続のユニットの現在のステータス、実行中かどうか、起動時に開始されたかどうかなどが一覧表示されます。
is-active:現在実行中ですか?
is-enable:起動時にこのユニットを有効にするデフォルトはありますか?
kill:killという名前で怖がらないでください。実際には、ユニットを実行しているプロセスにシグナルを送信します。
show:ユニットの構成を一覧表示します。
マスク:ユニットからログオフします。ログオフ後にユニットを起動することはできません。
unmask:ユニットのログアウトをキャンセルします。

Centos7でのsystemctlコマンドとサービスおよびchkconfig


5.Dockerユーザーグループを確立します

デフォルトでは、dockerコマンドはUnixソケットを使用してDockerエンジンと通信します。DockerエンジンのUnixソケットにアクセスできるのは、rootユーザーとdockerグループのユーザーのみです。セキュリティ上の理由から、rootユーザーは通常Linuxシステムで直接使用されません。したがって、dockerを使用する必要があるユーザーをdockerユーザーグループに追加することをお勧めします。

Dockerグループを作成します。

$ sudo groupadd docker

現在のユーザーをdockerグループに追加します。詳細なusermodコマンド

$ sudo usermod -aG docker $USER

現在の端末からログアウトして、再度ログインします。


6.Dockerが正しくインストールされているかどうかをテストします

$ docker run hello-world

ここに画像の説明を挿入
上記の情報が正常に出力されれば、インストールは成功です。


7.起動後に自動的に起動するようにdockerを設定します

$ sudo systemctl enable docker

おすすめ

転載: blog.csdn.net/qq_43561341/article/details/113847645