CentOS 8.4 に Docker をインストールする詳細なチュートリアル

CentOS 8.4 に Docker をインストールする詳細なチュートリアル

序文:

Docker は、アプリケーションの開発、出荷、実行のためのオープン プラットフォームです。 Docker を使用すると、アプリケーションをインフラストラクチャから分離できるため、ソフトウェアを迅速に提供できます。 Docker を使用すると、アプリケーションを管理するのと同じようにインフラストラクチャを管理できます。コードを迅速に配信、テスト、デプロイする Docker の方法を活用することで、コードの作成から本番環境での実行までの遅延を大幅に短縮できます。開発、展開、テスト、配布をより効率的かつ簡単にするために、Docker をインストールしてその魅力を体験してみましょう。

システム要件:

  • Docker は CentOS 7/8 の 64 ビット バージョンをサポートしており、カーネル バージョンは 3.10 以上である必要があります。
  • centos-extrasrepository を有効にする必要があります。このリポジトリは CentOS 7 ではデフォルトで有効になっています。以前に無効にしていた場合は、再度有効にする必要があります。
  • CentOS 7 は最小カーネル要件を満たしていますが、カーネルバージョンが比較的低いため、一部の機能 ( overlay2ストレージ層ドライバーなど) が使用できず、一部の機能が不安定になる可能性があります。

インストール環境:

この記事では主に、Liunx オペレーティング システム CentOS8.4 に Docker をインストールします。インストールの前に、lsb_release -a コマンドを使用してシステム バージョンを確認できます (下の図を参照)。

注意: Docker YUM リポジトリを構成せずに yum コマンドを使用して Docker をインストールしないでください。

古いバージョンをアンインストールします:

CentOS の古いバージョンの Docker のパッケージ名は docker または docker-engine です。 Linux CentOS システムに古いバージョンの Docker をインストールしている場合は、次のコマンドを実行して、古いバージョンの Docker と関連する依存関係をアンインストールする必要があります。

sudo yum dockerを削除します\
                  dockerクライアント\
                  docker-client-最新 \
                  docker-common \
                  docker-最新 \
                  docker-最新-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  dockerエンジン

私のシステムはインストールしたばかりなので、上記のコマンドを実行すると、削除するパッケージが見つからないというメッセージが表示されました。

yumパッケージがインストールされていないと報告しても問題ありません。

注: イメージ、コンテナ、ボリューム グループ、ネットワーク、その他のファイルを含む/var/lib/docker/ディレクトリの内容は保持されます。 Docker CE の新しいパッケージ名はdocker-ceです。

yum は具体的に何をするのでしょうか?

簡単な説明: yum はパッケージ マネージャーと呼ばれ、主にダウンロード、依存関係、インストール、アンインストールの 4 つの問題を解決するために使用されます。

詳細な説明: https://www.jb51.net/article/165658.htm

yum を使用してインストールします。

依存パッケージといくつかの必要なシステム ツールをインストールするには、次のコマンドを実行します。

sudo yum install -y yum-utils デバイスマッパー永続データ lvm2

yum stable ミラー ソースを設定します。

国内ネットワークの理由により、Alibaba Cloud が提供する Docker CE イメージソースステーションを使用することをお勧めします。

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

公式ミラーソースアドレス:

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

Dockerをインストールする

yumソフトウェア ソース キャッシュを更新し、 docker-ce(一路yes即可)

sudo yum インストール docker-ce docker-ce-cli containerd.io

正常にインストールされた依存関係は次のとおりです。

正常にインストールされたdockerのバージョンを確認します: docker -v

CentOS8 追加設定

CentOS8 ファイアウォールはnftablesを使用しますが、Docker はまだnftables。

まず、ファイアウォールの状態を確認します。ファイアウォールの状態がオンになっている場合は、次の操作を実行します。

systemctl ステータス ファイアウォール

iptables以下の設定で使用できます: /etc/firewalld/firewalld.confを変更します

# ファイアウォールバックエンド=nftables
ファイアウォールバックエンド=iptables

または、次のコマンドを実行します。

ファイアウォールコマンド --permanent --zone=trusted --add-interface=docker0
 
ファイアウォール-cmd --reload

Docker サービスを開始します。

sudo service docker start コマンドを実行して Docker サービスを開始すると、例外が表示されます: /bin/systemctl start docker.service にリダイレクトします

例外が発生した場合は、Linux ディストリビューションごとに Docker サービスを起動するためのコマンドが異なるため、関連する systemctl コマンドを実行する必要があります。

sudo systemctl でdockerを有効にする
sudo systemctl dockerを起動します

最後にdockerの実行ステータスを確認します

systemctl ステータス docker 

Dockerデーモンを起動します。

公式チュートリアル: https://docs.docker.com/config/daemon/systemd/

手動スタート

Docker をインストールしたら、Docker デーモンを起動する必要があります。ほとんどの Linux ディストリビューションは、 systemctlを使用してサービスを開始します。

sudo systemctl dockerを起動します

システム起動時に自動的に起動

起動時に Docker を起動したい場合は、「起動時に Docker を起動するように構成する」を参照してください👉。

Docker の基本コマンド:

Dockerを起動します: systemctl start docker

Dockerを停止する: systemctl stop docker

Dockerを再起動します: systemctl restart docker

docker のステータスを確認します: systemctl status docker

起動時に開始: systemctl enable docker

現在のシステムの docker 情報: docker info

すべてのコンテナを一覧表示: docker ps -a

コンテナを停止します: docker start コンテナIDまたはコンテナ名

コンテナを直接閉じる: docker kill コンテナIDまたはコンテナ名

コンテナを再起動します: docker restart コンテナIDまたはコンテナ名

コンテナの削除: docker rm コンテナIDまたはコンテナ名

イメージを表示: docker image ls

その他のコマンド検索(推奨): Docker コマンドオンラインクイックリファレンスマニュアル

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

まずはdocker run hello-worldと入力して、下図のようなプロンプトが表示されるか確認します。エラーが発生した場合は、環境設定に問題がある可能性があります。

注: このコマンドを実行すると、Docker は hello-world イメージを公式リポジトリからローカル コンピューターにプルし (イメージがローカルに存在しない場合)、そのコンテナーを自動的にインスタンス化します。

ローカルでイメージ 'hello-world:latest' が見つかりません
最新: library/hello-world から取得
2db29710123e: プル完了
ダイジェスト: sha256:37a0b92b08d4919615c3ee023f7ddb068d12b8387475d64c622ac30f45c29c51
ステータス: hello-world:latest の新しいイメージをダウンロードしました
 
Dockerからこんにちは!
このメッセージは、インストールが正常に動作していることを示しています。
 
このメッセージを生成するために、Docker は次の手順を実行します。
 1. Docker クライアントが Docker デーモンに接続しました。
 2. Docker デーモンは Docker Hub から「hello-world」イメージを取得しました。
    (amd64)
 3. Dockerデーモンは、そのイメージから新しいコンテナを作成し、
    現在読んでいる出力を生成する実行可能ファイル。
 4. Dockerデーモンはその出力をDockerクライアントにストリーミングし、Dockerクライアントはそれを
    端末に。
 
もっと野心的なことに挑戦するには、次のコマンドで Ubuntu コンテナを実行できます。
 $ docker run -it ubuntu bash
 
無料の Docker ID を使用して、イメージを共有したり、ワークフローを自動化したりすることができます。
 参考:
 
その他の例やアイデアについては、以下をご覧ください。
 詳しくはこちら

hello-World イメージとコンテナを表示します。

Docker 学習シリーズ

1日目、包括的なDockerクイックスタートチュートリアル👉

2日目、CentOS 8.4 Dockerをインストール👉

参考記事:

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

CentOS 7 (yum を使用してインストール)

CentOS 8.4 への Docker のインストールに関するこの記事はこれで終わりです。CentOS 8.4 への Docker のインストールの詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • CentOS7にDockerをインストールする詳細な手順
  • CentOSにDockerをインストールする方法
  • CentOS 7にDockerをインストールする
  • CentOS 8 に Docker をインストールする詳細なチュートリアル
  • CentOS 8にdockerをインストールする最も詳細な方法
  • CentOS 8.4 での Docker パッケージのオフラインインストールの問題について
  • Centos7 に Docker をインストールします (2020 の最新バージョンが利用可能、コピーして貼り付けるだけ)
  • Linux Centos でスクリプトを使用して Docker をインストールする方法
  • Dockerのyumソースの設定とCentOS7へのインストールの詳細な説明
  • CentOS 7.5 に Docker をインストールする詳細なチュートリアル
  • CentOS用のDockerの特定のバージョンをインストールする

<<:  HTMLを使用してシンプルなメールテンプレートを作成する

>>:  CSS 不透明度子要素が親要素の透明度を継承するためのソリューションの詳細な説明

推薦する

リアクトルーティングガード(ルーティングインターセプション)の実装

React は Vue とは異なります。ルートにメタ文字を設定することでルートインターセプションを実...

NginxにLuaモジュールを追加する方法

luaをインストールする http://luajit.org/download/LuaJIT-2.0...

CSS セレクターの重みの理解(個人テスト)

コードをコピーコードは次のとおりです。 <スタイル タイプ="text/css&qu...

MySQL の 6 つの一般的な制約タイプの詳細な説明

目次序文1.nullでない2. ユニーク3. デフォルト4.主キー自動増分主キー5. 外部キー6.チ...

Linux dirnameコマンドの具体的な使い方

01. コマンドの概要dirname - ファイル名からディレクトリ以外のサフィックスを削除しますd...

Tomcat Nginx Redis セッション共有プロセス図

1. 準備ミドルウェア: Tomcat、Redis、Nginx Jar パッケージ: commons...

MySQLのどのフィールドがインデックスに適しているかについての簡単な説明

目次1 データベース インデックスを作成するための一般的なルールは次のとおりです。 2. 数千万件の...

HTMLハイパーリンクaタグのhrefジャンプとonclick間の実行順序の例

HTMLハイパーリンクaタグのhrefジャンプとonclickの実行関係htmlのaタグのhrefは...

MySQL マスタースレーブステータスチェックの実装

1. AデータベースとBデータベースの同期ステータスを確認する次のコマンドを入力すると多くの情報が表...

vue backtop コンポーネントを実装するための完全なコード

効果: コード: <テンプレート> <div class="back-t...

fastdfs+nginxクラスタ構築の実装

1. fastdfs の紹介1. fastdfsとは何かFastdfs は軽量のオープンソース分散フ...

Centos7 に yum 経由で MySQL をインストールする方法

1. MySQLがインストールされているかどうかを確認する yum インストール済みリスト | gr...

Nginx ロードバランシングの設定方法

目次Nginx 負荷分散構成Nginx 負荷分散戦略ポーリング(デフォルト)重さip_ハッシュ公正(...

Dockerは異常なコンテナ操作を排除する

この初心者は、Docker を学び始めたばかりの頃にこのような問題に遭遇しました。記録しておきます。...

JSでユーザーを追跡する方法

目次1. 同期AJAX 2. 非同期AJAX 3. ユーザーのクリックを追跡する4. リバウンドトラ...