Dockerは、コンテナー内でソフトウェアを実行するために使用されるツールです。含まれているソフトウェアはどのシステムでも同じように実行される必要があるため、開発者とユーザーがオペレーティングシステムとの互換性や依存関係について心配する必要がない優れた方法です。
最近AlmaLinuxをインストールしたか、CentOSからAlmaLinuxに移行した場合、Dockerをシステムで起動して実行する方法を疑問に思うかもしれません。残念ながら、Red Hat Enterprise LinuxはDockerのネイティブサポートを提供していません。また、AlmaLinuxはRHELのフォークであるため、サポートしていません。代わりに、RedHatはDockerの代わりとなるPodmanのサポートを推進しています。これにより、Dockerのインストールが少し難しくなりますが、AlmaLinuxでも可能です。
このガイドでは、AlmaLinuxにDockerをインストールする方法と、コンテナ化されたソフトウェアのインストールを開始する方法を説明します。 Dockerをインストールしたら、ディストリビューションのパッケージマネージャーを使用してアプリをダウンロードするのとほぼ同じ方法でDockerを使用してソフトウェアパッケージをインストールできます。 Dockerを使用することの違いは、すべてがより自動化され、互換性と依存関係が潜在的な問題ではなくなったことです。
このチュートリアルでは、次のことを学びます。
- Dockerのインストール方法
- rootなしでDockerを実行する方法
- Dockerイメージを検索する方法
- Dockerイメージをインストールする方法
- Dockerイメージを実行する方法
- さまざまなコマンドを使用してDockerを監視する方法
カテゴリ | 使用する要件、規則、またはソフトウェアバージョン |
---|---|
システム | AlmaLinux |
ソフトウェア | Docker |
その他 | rootまたはsudo を介したLinuxシステムへの特権アクセス コマンド。 |
コンベンション | # –指定されたLinuxコマンドは、rootユーザーとして直接、またはsudo を使用して、root権限で実行する必要があります。 コマンド$ –特定のLinuxコマンドを通常の非特権ユーザーとして実行する必要があります |
AlmaLinuxにDockerをインストールする
Red Hatはいくつかの障害を抱えているため、単純なdnf install
でDockerをインストールすることはできません。 指図。最初にDockerリポジトリをシステムに追加してから、AlmaLinuxにデフォルトでインストールされている競合するパッケージをいくつかアンインストールする必要があります。
この記事の執筆時点で、AlmaLinux用のDockerリポジトリに最も近いものは、CentOS用に作成されたものです。次のコマンドを使用して、Dockerリポジトリをシステムに追加できます。
$ sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
Dockerのインストールを開始する前に、podman
を削除する必要があります およびbuildah
Dockerと競合し、Dockerのインストールを妨げるため、システムからのパッケージ。
$ sudo dnf remove podman buildah
最後に、次のコマンドを実行して、必要な3つのDockerパッケージをインストールできます。
$ sudo dnf install docker-ce docker-ce-cli containerd.io
インストールが完了したら、Dockerサービスを開始し、オプションで、システムが再起動されるたびに実行できるようにします。
$ sudo systemctl start docker.service $ sudo systemctl enable docker.service
次のコマンドを入力して、Dockerがインストールされていることを確認し、現在のバージョンに関する情報を収集できます。
$ sudo docker versiondockerversionコマンドの出力
次のように入力することで、現在実行されているDockerコンテナの数を確認し、Dockerの構成済みオプションの一部をすばやく簡単に確認する方法もあります。
$ sudo docker info構成を示すdockerinfoコマンドの出力
rootなしでDockerを実行する
デフォルトでは、sudo
を使用する必要があります または、Dockerコマンドを実行するときはいつでもrootにログインします。この次の手順はオプションですが、現在のユーザーとしてDockerを実行する機能が必要な場合は、次のコマンドを使用してアカウントをdockerグループに追加します。
$ sudo usermod -aG docker $USER
これらの変更を有効にするには、システムを再起動する必要があります。
$ reboot
Dockerイメージの検索
これで、Dockerを使用してイメージをインストールする準備が整いました。インストールするイメージの名前がすでにわかっている場合は、次のセクションに進むことができます。 Dockerを介して目的のソフトウェアを検索する必要がある場合は、次のコマンド構文を使用できます。
$ docker search [name]
たとえば、人気のあるWebサーバーソフトウェアであるnginxを検索してみましょう。
$ docker search nginxDockerは、利用可能なコンテナイメージを検索できます
ご覧のとおり、nginxの公式画像が1つあります(OFFICIAL
で示されます)。 列)単にnginx
と呼ばれます 。他にも利用可能なリリースがあり、それらの説明を読んで、公式イメージとの違いを確認する必要があります。
Dockerイメージをインストールする
インストールするイメージが決まったら、次のコマンドを使用して、目的のソフトウェアをダウンロードするようにDockerに指示できます。例として、hello-world
をインストールします Dockerがイメージを正常にダウンロードして実行できるようにするために使用できるパッケージ。
$ docker pull hello-worldDockerがコンテナーイメージをダウンロードする
上のスクリーンショットの出力は、Dockerが指定したイメージを見つけてダウンロードできたことを示しています。
Dockerイメージの実行
イメージがダウンロードされたので、次のコマンドを使用してイメージを実行します。
$ docker run hello-worldDockerはhello-worldイメージを正常に実行できました
Dockerの監視
Dockerには、イメージで何が起こっているか、イメージが使用しているシステムリソースの数などを確認するための多くのオプションがあります。次のコマンドは、Dockerとインストールされているイメージを監視するのに役立ちます。
実行中のDockerコンテナを確認し、現在のステータスを確認するには、次のように入力します。
$ docker container lsdocker container lsコマンドは、現在実行中のコンテナーを表示します
インストールされているすべてのDockerイメージのリストを表示するには、次のように入力します。
$ docker imagesdocker imagesコマンドは、Dockerに現在インストールされているイメージを表示します
実行中のイメージの現在のCPU、RAM、およびネットワーク使用量を確認するには、次のように入力します。
$ docker statsdockerstatsコマンドでDockerイメージの現在のシステム使用状況を確認する
Dockerのネットワーク構成を確認するには、次のように入力します。
$ docker network lsDockerネットワークlsを使用してDockerで現在構成されているネットワークを参照してください
まとめ
RHEL、ひいてはAlmaLinuxはDockerをネイティブにサポートしていませんが、このガイドで説明したように、Dockerを起動して実行することは可能です。 podman
などのRHELネイティブツール およびbuildah
Dockerと互換性がありますが、実行するためにサーバー/クライアントアーキテクチャは必要ありません。可能な場合はネイティブツールを使用することを常にお勧めしますが、何らかの理由で元のDockerをインストールすることをお勧めします。
docker-compose
のインストールなど、AlmaLinux(およびRHEL)でのDockerの実行の詳細を確認するには 、RHEL8にDockerをインストールする方法に関する他のガイドをご覧ください。