次のプレイブックを実行しようとしています。
.
.
.
tasks:
- name: Install python and build dependencies
yum: pkg={{ item }} state=installed
with_items:
- docker-latest
- docker
- docker-python
- python-docker-py
.
.
.
しかし、これが私が得るものです:
failed: [myVM] (item=['docker-latest', 'docker', 'docker-python', 'python-docker-py'])
=> {"changed": false,
"failed": true,
"item": ["docker-latest",
"docker",
"docker-python",
"python-docker-py"],
"msg": "No package matching 'docker-latest' found available, installed or updated",
"rc": 126,
"results": ["No package matching 'docker-latest' found available, installed or updated"]
}
私のホストオペレーティングシステムはCentOS Linuxバージョン7.9.2009です。
答え1
回答
パッケージによると、docker-latest
リストの一部ではありません。公式ルーストアバウト文書。
このプロセスは、次のパッケージをインストールする必要があることを示します。
yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
したがって、あなたの場合にはインストールしてくださいルーストアバウトスタックアンシプール(提供されたループを新しい構文に置き換えます):
# ...
- name: Install Docker packages
ansible.builtin.yum:
name:
- docker-ce
- docker-ce-cli
- containerd.io
- docker-buildx-plugin
- docker-compose-plugin
state: latest
# ...
リストに追加して、必要な他のパッケージを追加できます。
DockerをインストールするためのAnsibleマニュアル
以下は、Dockerのインストール用に私が作成したシンプルなプレイブックです。実行する準備が整ったスクリプトではなく、適応のための基盤として考えてください。
---
- name: Install Docker stack on CentOS 7
hosts: <yourTarget(s)>
tasks:
- name: Upgrade all packages
ansible.builtin.yum:
name: "*"
state: latest
- name: Remove old Docker packages
ansible.builtin.yum:
name:
- docker
- docker-client
- docker-client-latest
- docker-common
- docker-latest
- docker-latest-logrotate
- docker-logrotate
- docker-engine
state: absent
- name: Enable centos-extras repository
ansible.builtin.yum_repository:
name: centos-extras
state: present
enabled: true
- name: Set up Docker repository
ansible.builtin.get_url:
url: https://download.docker.com/linux/centos/docker-ce.repo
dest: /etc/yum.repos.d/docker-ce.repo
- name: Install Docker packages
ansible.builtin.yum:
name:
- docker-ce
- docker-ce-cli
- containerd.io
- docker-buildx-plugin
- docker-compose-plugin
state: latest
- name: Enable and start Docker service
ansible.builtin.service:
name: docker
state: restarted
enabled: true