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

推薦する

VMware で VMware ツールをインストールしてもインストール ファイルが表示されない問題を解決する方法

VMware ツールは VMware の使用に非常に便利です。そのため、VMware ツールをインス...

LINUX ポートが占有されているかどうかを確認します

ポートが占有されているかどうかは、これまで一度もわかりませんでした。多くの人に尋ねて、ようやくわかり...

クールな点滅アラームボタンをおすすめします

効果は以下のとおりです。 コードは次のとおりです (クリックすると展開してソース コードが表示されま...

Vue カスタム オプション時間カレンダー コンポーネント

この記事の例では、参考のためにvueカスタムオプションタイムカレンダーコンポーネントの具体的なコード...

nginx のロケーションで URI の傍受を実装する方法

例:場所のルートとエイリアスルートディレクティブは、ルートによって設定されたディレクトリに検索ルート...

jQuery はパーセンテージスコアリングの進捗バーを実装します

この記事では、パーセンテージスコアリングプログレスバーを実現するためのjQueryの具体的なコードを...

MySQL における悲観的ロックと楽観的ロック

リレーショナル データベースでは、悲観的ロックと楽観的ロックがリソース同時実行シナリオのソリューショ...

Linux の traceroute コマンドの使用方法の詳細な説明

Traceroute を使用すると、情報がコンピュータからインターネットの反対側のホストまでたどるパ...

MySQLのinnodb_data_file_pathパラメータを変更する際の注意事項

序文innodb_data_file_path は、innodb テーブルスペース ファイルを指定す...

1 時間で MySQL データベースを学ぶ (Zhang Guo)

目次1. データベースの概要1.1 開発の歴史2. MySQL の紹介2.1. MySQLの概要2....

Datagrip2020 が MySQL ドライバーのダウンロードに失敗する

「downloadlaod」を直接クリックしてもダウンロードできない場合は、ここからダウンロードす...

MySQLクエリの文字セットの不一致の問題を解決する方法

問題を見つける最近、仕事で問題が発生しました。MySQL データベースにテーブルを作成するときに、ラ...

Vue の計算プロパティとリスナーの使用の概要

1. 計算プロパティとリスナー1.1 計算プロパティ <!DOCTYPE html> &...

Mysqlは隣接リスト(隣接リスト)を通じてツリー構造を保存します。

以下の内容では、隣接リストを使用してツリー構造を保存する MYSQL のプロセスとソリューションを紹...

2015-2016年に主流となるインタラクティブ体験のトレンド

5月の最も重要なインタラクティブデザイン記事!今年、Baiduのデザイナーは体験の観点から出発し、大...