Ansible を使用した Docker のインストールと構成

Ansible Wo Shi Yongshita Docker Noinsutoruto Gou Cheng



サーバーの自動化は、システム管理者にとって最も影響力があり、価値のあるスキルです。これにより、構成中に 10 台以上のマシンに対して一連の面倒で時間のかかるタスクを繰り返す必要がなくなります。

幸いなことに、Ansible などのツールの発明により、サーバーのセットアップと構成、特に新しいマシンの自動化処理が合理化され、効率的になりました。これにより、新しいシステムを構成する際の人的エラーの可能性も排除されます。

このチュートリアルでは、Ansible を使用して、新しい Debian サーバーをセットアップし、Docker を簡単にインストールするプロセスを自動化する方法を学びます。







要件:

続行する前に、次のものが揃っていることを確認する必要があります。



  1. ターゲットの Debian ベースのシステム
  2. ターゲット システムへのホストがすでに構成されている Ansible コントローラー
  3. Ansible プレイブックの作成と実行の基本
  4. ターゲットマシン上の十分な権限

注: このチュートリアルでは、Docker または Ansible の基本については説明しません。続行する前に、これらのツールが両方ともホスト マシンにセットアップされていることを確認する必要があります。



ステップ 1: ハンドブックを準備する

最初のステップは、Playbook 定義を保存するファイルを作成することです。汎用性を高めるために、現在の作業ディレクトリ内のファイルに「playbook.yml」という名前を付けます。プロジェクトに適切と思われるディレクトリとファイル名を自由に選択してください。





$ cd /ホーム/無料
$ touch プレイブック.yml

すべての Ansible タスクをこの Playbook ファイルに記述し、完了時に実行します。 Ansible プレイブックは、Ansible を使用して自動化できる小さな作業単位です。

作成したら、Playbook ファイルに次のエントリを追加します。



---
- ホスト
: 全て
なる
: 真実

指定された宣言は、Ansible Playbook 全体で非常に普遍的です。最初のディレクティブは、どのホストをターゲットにするかを Ansible に指示します。 Ansible ホストの構成方法を知っていれば、これは簡単に理解できるはずです。

Ansible インベントリにはホストが 1 つしかないため、Playbook ではすべてのホストを対象とします。

最後のブロックは、Playbook で定義されているすべてのコマンドを root として実行することを Ansible に指示します。ターゲット マシンにパッケージをインストールするため、これは不可欠です。

ステップ 2: 必要なパッケージをインストールする

次のステップでは、Debian システムに Docker をインストールして実行するために必要なツールをインストールするように Ansible に指示します。この場合、Ansible Unix ツールによって提供される「apt」モジュールを使用します。詳細については、Ansible「apt」に関するチュートリアルを確認してください。

次のエントリを Playbook ファイルに追加します。

- 名前 : 必要なパッケージをインストールする
適切な
:
パッケージ
:
- apt-transport-https
- CA 証明書
- カール
- ソフトウェアプロパティ-共通
- python3-pip
- python3-setuptools
: 最新
アップデートキャッシュ
: 真実

この場合、「apt-transport-https」、「ca-certificates」、「curl」、「software-properties-common」、「python3-pip」、および「python3-setuptools」をインストールすることを Ansible に伝えます。 」システム上で。

ステップ 3: Docker をインストールする

ご想像のとおり、最後のステップは、ホスト システムに Docker をインストールするように Ansible に指示することです。まず、Docker GPG キーを取得してダウンロードを確認します。次に、公式リポジトリを新しいパッケージ ソースとして追加し、それを使用して Docker をインストールします。

インストールを完了するには、次のエントリを追加します。

- 名前 : Docker GPG apt キーを追加
apt_key
:
URL
: https://download.docker.com/linux/debian/gpg
: 現在
- 名前
: Dockerリポジトリの追加
apt_リポジトリ
:
リポジトリ
: デブ https://download.docker.com/linux/debian   bookworm stable
: 現在
- 名前
: APT を更新し、Docker とツールをインストールします。
適切な
:
パッケージ
:
- docker-ce
- docker-what-c​​li
-containerd.io
- docker-buildx-プラグイン
- docker-compose-プラグイン
: 最新
アップデートキャッシュ
: 真実

これにより、Docker エンジンとすべての関連ツールがセットアップされます。

ステップ 4: 最終的なハンドブックを確認する

最後に、以下に示すように、Debian システムに Docker をインストールして構成するための Playbook が必要になります。

---
- 名前
: Docker のインストールと構成
ホスト
: 全て
なる
: はい
タスク
:
- 名前
: 必要なパッケージをインストールする
適切な
:
名前
:
- apt-transport-https
- CA 証明書
- カール
- ソフトウェアプロパティ-共通
- python3-pip
- python3-setuptools
: 最新
アップデートキャッシュ
: 真実

- 名前
: Docker GPG apt キーを追加
apt_key
:
URL
: https://download.docker.com/linux/debian/gpg
: 現在

- 名前
: Dockerリポジトリの追加
apt_リポジトリ
:
リポジトリ
: それ [ アーチ=amd64 https://download.docker.com/linux/debian bookworm stable
: 現在

- 名前
: APTを更新し、Dockerとツールをインストールします
適切な
:
名前
:
- docker-ce
- docker-what-c​​li
-containerd.io
- docker-buildx-プラグイン
- docker-compose-プラグイン
: 最新
アップデートキャッシュ
: 真実

ステップ 5: プレイブックを実行する

すべての変更を構成したら、次のコマンドを実行してプレイブックを実行し、プレイブックで定義されたタスクをセットアップします。

$ ansible-playbook playbook.yml

これにより、Playbook で定義されたすべてのタスクが実行され、システムに Docker がインストールされます。

結論

この投稿では、Ansible を使用して、Debian ベースのシステムに Docker をインストールおよび構成するプロセスを簡単に自動化する方法について説明しました。