Ansible 설치 실패(docker-latest docker docker-python python-docker-py)

Ansible 설치 실패(docker-latest docker docker-python python-docker-py)

다음 플레이북을 실행하려고 합니다.

.
.
.
  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

관련 정보