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 不透明度子要素が親要素の透明度を継承するためのソリューションの詳細な説明

推薦する

MySQL 5.7.23 winx64 のインストールと設定方法のグラフィックチュートリアル (win10 の場合)

この記事はMySQL 5.7.23 winx64のインストールチュートリアルを記録します。具体的な内...

美しいHTMLコードの書き方

美しい HTML コードの外観 美しい HTML コードの書き方。外国人が書いた記事: 美しい HT...

Mysqlクエリ条件で文字列の末尾にスペースがあっても一致しない問題の詳細な説明

1. テーブル構造テーブル人id名前1あなた2あなた(スペース) 3あなた(スペース2つ) 2. ク...

MySQLデータベースのnullに関する知識ポイントのまとめ

MySQL データベースでは、null は一般的な状況です。MySQL での null に関する注意...

Vue+swiperでタイムライン効果を実現

この記事では、タイムライン効果を実現するためのvue+swiperの具体的なコードを参考までに共有し...

CSSスクロールバーのスタイルをカスタマイズする方法の詳細な説明

この記事では、CSS スクロールバー セレクターを紹介し、Webkit ブラウザーと IE ブラウザ...

vue-amap のインストールと使用手順

以前、Amap API を非同期にロードする方法を紹介しました。今回は、vue-amap の使用方法...

MySQL 8.0.11 インストール概要チュートリアル図

インストール環境: CAT /etc/os-release CentOS システムのバージョン情報を...

MACでMYSQLデータベースのパスワードを忘れた場合の解決策

Mac オペレーティングシステムで MYSQL データベースのパスワードを忘れた場合の簡単な解決策1...

nginx ベースのブラウザネゴシエーションキャッシュプロセスの詳細な説明

この記事は主に、nginx に基づいてブラウザネゴシエーションキャッシュを設定する詳細なプロセスを紹...

CSS クロスフェード() を使用して半透明の背景画像効果を実現するサンプルコード

1. 要件の説明特定の要素については、背景background-imageを半透明にしたいが、テキス...

MySQL マスターライブラリ binlog (master-log) とスレーブライブラリ relay-log 間のコードの詳細な説明

メインライブラリのバイナリログ: # 2420 で #170809 17:16:20 サーバー ID...

CSSがページのレンダリングをブロックするかどうかについての簡単な説明

おそらく誰もが js の実行によって DOM ツリーの解析とレンダリングがブロックされることを知って...

HTML テーブル マークアップ チュートリアル (22): 行の境界線の色属性 BORDERCOLORLIGHT

行内では、明るい境界線の色を個別に定義できます。基本的な構文<TR ボーダーカラーライト=co...

Ubuntu LinuxにOracle Java 14をインストールする方法

最近、Oracle は Java 14 (または Oracle JDK 14) の一般公開を発表しま...