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

推薦する

Divの境界と透明度に関する設定

フレーム:スタイル=”border-style:solid;border-width:5px;bor...

Vue.js ドロップダウン コンポーネント付きテキストボックス

ドロップダウン付きのテキストボックスを使用すると、ユーザーはドロップダウン リストから入力を選択した...

MySql SQL最適化のヒントの共有

ある日、内部結合を含む SQL ステートメントの実行速度はそれほど遅くはない (0.1 ~ 0.2)...

MySQLでページングクエリを実装する方法

SQL ページング クエリ:背景会社のシステムには、構成管理用のプラットフォーム、いわゆる CRUD...

div が contentEditable=true に設定されている場合、コンテンツをリセットした後にカーソルを配置することはできません。

最近、絵文字にコメントする機能が必要なコメント機能に取り組んでいたため、 contentEditab...

Web デザイン TabIndex 要素

TabIndex は、Tab キーを押して、定義された TabIndex 要素を順番に取得し、各要素...

DBeaver を MySQL バージョン 8 以降に接続し、起こりうる問題を解決する方法の詳細な説明

データベース MySQL バージョン 8.0.18 DBeaver.exeをダウンロードするダウンロ...

MySQL8の再帰メソッドの使い方を教える

以前、カスタム関数を使用して MySQL でツリー構造を再帰的にクエリする方法についての記事を書きま...

HTML入力ボックスの最適化により、ユーザーエクスペリエンスと使いやすさが向上します。

ユーザーエクスペリエンスと使いやすさを向上させるために、入力ボックスなど、Web ページでユーザーが...

Vue パッケージサイズの最適化の実装 (1.72M から 94K)

1. 背景最近、独立した開発者がUIデザインを行うのを支援するために、uideaというWebサイト...

React Hooks の一般的な使用シナリオ (概要)

目次1. ステートフック1. 基本的な使い方2. 更新3. 合併を実現する4. 遅延初期化状態5. ...

Linux exa コマンド (ls よりも優れたファイル表示エクスペリエンス)

インストールREADMEに従ってインストールしてくださいドキュメントには、exa は Rust で実...

JavaScriptはクリックするとランダムなグラフィックを生成します

この記事では、クリックするとランダムグラフィックの生成を実現するJavaScriptの具体的なコード...

jsはテーブルドラッグオプションを実装します

この記事の例では、テーブルドラッグオプションを実装するためのjsの具体的なコードを参考までに共有して...

Vueはデジタル千単位区切り形式をグローバルに実装します

この記事の例では、Vue がデジタル 3 桁区切り形式をグローバルに実装するための具体的なコードを参...