LinuxにDockerをインストールする方法

LinuxにDockerをインストールする方法
Docker Compose ファイルを表示しているコンピューターのモニター画面の写真。

Docker は、誰でも通常のアプリと同じように複雑なプログラムをデプロイおよびリリースできる強力なコンテナ化プラットフォームです。これは、オンライン サービスを実行したいが、依存関係や構成ファイルの管理という面倒な作業は避けたいユーザーにとって魅力的です。この記事では、現在最も人気のある Linux ディストリビューションのいくつかに Docker と Docker Compose をインストールする方法を説明します。

Linux でサービスをデプロイするために Docker を使用する理由

Dockerなどのコンテナ プラットフォームは、Linux マシンにサービスをインストールするための一般的な方法です。これにより、複雑なソフトウェアをポータブル ユニットに簡単に分離できるため、サーバーのセキュリティが向上します。

Shlink を維持するために実行されているさまざまな Docker コンテナを表示するターミナル。

Docker の強力な機能の 1 つは、コンテナが 1 つのディストリビューションで動作したら、他のディストリビューションでも動作するようにするのは比較的簡単なプロセスであることです。これは、Docker がこれらの Linux ディストリビューション間の違いを抽象化して、コンテナに少し変更を加えるだけで互換性を持たせるためです。

Docker は、コンテナ化されていないデプロイメントに比べてサービス管理も簡素化します。本来、システムで何かが壊れた場合、そのマシン上のすべてのサービスを再インストールして再構成する必要がありました。Docker を使用すると、構成ファイルを別のマシンにコピーしてサービスを開始するだけで、中断したところからすぐに作業を続行できます。

UbuntuにDockerをインストールする

まず、公式 Docker プロジェクトの公開キーのキー フィンガープリントを確認します。

現時点では、Docker プロジェクトの署名キーのフィンガープリントは次のとおりです9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88

Docker CE 署名キーのフィンガープリントを強調表示するターミナル。

ただし、このキーは将来変更される可能性があります。Docker の公式 Web サイトで、一致しているかどうかを確認してください。インストールするソフトウェアが正当なものであることを確認するために、これを相互参照することが重要です。

署名キーの有効性を確認したら、ダウンロードして「/etc/apt/keyrings」フォルダに保存します。

キーファイルの権限ビットが正しいことを確認します。

Docker プロジェクト用の新しいリポジトリ ファイルを作成します。

新しいリポジトリ ファイル内に次のコード行を貼り付けます。

新しいリポジトリ ファイルを保存し、システムのパッケージ リポジトリを更新します。

Docker Compose プラグインとともにコア Docker パッケージをインストールします。これにより、Docker アプリケーションをデプロイし、適切にオーケストレーションできるようになります。

ほとんどの docker コマンドには、 というプレフィックスを付ける必要がありますsudo。毎回パスワードを入力しなくても済むようにするには、ユーザー アカウントを「docker」グループに追加します。

グラフィカル ユーザー インターフェイスからログアウトし、再度ログインします。これで、docker psの代わりになどのコマンドを使用できるようになりますsudo docker ps

DebianにDockerをインストールする

Debian は Ubuntu のアップストリーム Linux ディストリビューションであるため、パッケージとリポジトリの管理にも apt を使用します。つまり、Debian 固有の GPG キーとリポジトリ リンクをいくつか除けば、手順は Ubuntu とほぼ同じです。

まず、Docker プロジェクトから Docker リポジトリの署名キーを取得します。

Docker プロジェクト用の apt リポジトリ ファイルを作成します。

リポジトリ ファイル内に次のコード行を貼り付けます。

マシンのリポジトリリストを更新し、Debian システムを更新します。

Docker コア パッケージと Docker Compose プラグインを取得してインストールします。

ユーザー アカウントを「docker」グループに追加します。

新しい設定を適用するために Debian マシンを再起動し、次のコマンドを実行して Docker のインストールが正しく機能しているかどうかをテストします。

リポジトリで利用可能な最新バージョンの Docker を表示するターミナル。

FedoraにDockerをインストールする

Fedora に Docker と Docker Compose をインストールするには、まず dnf の管理プログラムを入手します。

Docker のリポジトリの詳細を取得し、dnf インストールにコミットします。

Docker、Docker Compose、およびそれらの依存関係をインストールします。

Docker リポジトリのフィンガープリントが次のとおりであることを確認します: 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35。 「y」と入力し、 を押してEnterインストール プロセスを続行します:

Fedora のキー検証プロンプトを強調表示するターミナル。

Docker systemd サービスを有効にして起動します。

現在のユーザー アカウントが「docker」ユーザー グループに属していることを確認します。

グラフィカル ユーザー インターフェイスからログアウトして再度ログインし、「Hello, world!」コンテナーを実行して Docker インストールをテストします。

Fedora Linux の hello-world コンテナを表示するターミナル。

Red Hat Enterprise Linux に Docker をインストールする

Red Hat Enterprise Linux (RHEL) は、Fedora の安定した長期サポート ダウンストリーム ディストリビューションです。アップストリームとは異なり、RHEL は、アプリケーションを確実に実行できる一貫性のある堅牢な環境を提供します。そのため、中断をほとんどまたはまったく行わずに実行したいプログラムを展開するのに最適なシステムです。

まず、Docker プロジェクトのリポジトリ ファイルを取得します。

Docker、Docker Compose、およびそれらの依存関係を入手してインストールします。

システムで実行する Docker のバージョンを指定することもできます。これを行うには、マシンで使用可能な Docker のバージョンを一覧表示します。

利用可能なバージョンのリストをスクロールし、インストールするバージョン番号をコピーします。

RHEL で利用可能な Docker のさまざまなバージョンを強調表示するターミナル。

次のコマンドをターミナルに貼り付け、version変数の値をバージョン番号に置き換えます。

システムに特定のバージョンの Docker をインストールします。

systemctl を使用して Docker サービスを有効にして実行します。

現在のユーザーを docker ユーザー グループに追加します。

docker --versionを実行してバージョン番号を一覧表示し、Docker が正常に動作しているかどうかをテストします。

RHEL で実行されている Docker のダウングレード バージョンを表示するターミナル。

Arch LinuxにDockerをインストールする

Arch Linux のコミュニティ リポジトリにはすでに Docker と Docker Compose が含まれています。これにより、pacman を実行するだけで両方を簡単にインストールできます。

Arch Linux での Docker のインストール プロンプトを表示するターミナル。

現在のユーザー アカウントを Docker グループに追加します。

マシンを再起動してシステムをリロードし、Docker デーモンを起動します。

起動時に Docker サービスを自動的に開始し、現在のセッションで実行できるようにします。

「Hello, world」コンテナを実行して、Docker が正しく動作しているかどうかをテストします。

Arch Linux で実行されている hello-world Docker コンテナを表示するターミナル。

最初の Docker コンテナのデプロイ

マシン上で Docker が起動して実行されると、プラットフォームを使用してシステム上でさまざまなアプリケーションやサービスを取得できるようになります。Docker を使い始める最も簡単な方法は、一般的なアプリケーション用に構築済みのコンテナーを探すことです。

ここでは、基本的な静的 Web サイトを提供したいので、Nginx Docker コンテナーを使用します。

Nginx の Docker イメージ ページのスクリーンショット。

ターミナル セッションに戻り、Docker コンテナ用のディレクトリを作成します。

静的 Web サイトを Docker ディレクトリ内にコピーします。

お気に入りのテキスト エディターを使用して、新しいディレクトリ内に Dockerfile を作成します。

次のコード行を Dockerfile 内に貼り付けます。これにより、Nginx イメージが読み込まれ、静的 Web サイトが「html-site」フォルダーからコンテナー内の「html」フォルダーにコピーされます。

Dockerfile を保存し、Nginx Docker コンテナをビルドします。

run サブコマンドを使用して、新しく構築された Docker コンテナを実行します。

Docker Compose を使用してコンテナを実行する

コマンドラインで直接実行する以外に、Docker Compose を使用してコンテナを起動することもできます。これは、より複雑なデプロイメントに役立つ、再現可能な Docker セットアップを作成する方法です。

Docker ディレクトリ内に「docker-compose.yml」ファイルを作成します。

次のコード ブロックを Compose ファイル内に貼り付けます。

「docker-compose.yml」ファイルを保存し、Docker コンテナを起動します。

Web ブラウザーを使用して「localhost:8080」にアクセスし、新しい Web サイトが正常に動作しているかどうかをテストします。

Docker 化された Nginx インスタンス上で実行されている基本的な Web サイトを示すスクリーンショット。

Docker の基礎を学び、Linux システムにインストールし、基本的な Docker 化された Web サーバーを実行することは、この素晴らしいコンテナー プラットフォームでできることのほんの一部にすぎません。Tiny Tiny RSS を使用して独自のオンライン RSS リーダーを展開し、Docker を使用したセルフホスティング Web サービスの奥深い世界を探索してください。

画像クレジット: Mohammad Rahmani (Unsplash経由)。すべての変更とスクリーンショットはRamses Redによるものです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です