Соответствующий пакет "docker-ce" не доступен с ansible

на ubuntu 18.04 я запускаю эту роль ansible (версия 2.5.1):

---
- name: Add Docker apt repository key.
  apt_key:
    url: "https://download.docker.com/linux/ubuntu/gpg"
    state: present

- name: gather facts
  setup:    

- name: Set the stable docker repository
  apt_repository: 
    repo: "deb [arch=amd64] https://download.docker.com/linux/ubuntu {{ ansible_lsb.codename }} stable"
    state: present
    update_cache: yes    

- name: Install Docker
  apt:
    name: docker-ce
    state: present

С этим playbook:

---


- hosts: localhost
  connection: local
  gather_facts: False
  become: true

  pre_tasks:
  - name: Install python for Ansible
    raw: test -e /usr/bin/python || (apt -y update && apt install -y python-minimal)

  tasks:  
  - name: Install list of packages
    apt: name={{item}} state=latest
    with_items:
         - nano
         - git
         - htop
         - gitg

  roles:
      - {role: 'docker', tags: 'docker'}

но я получаю следующую ошибку:

PLAY [localhost] *******************************************************************************************************************************

TASK [Install python for Ansible] **************************************************************************************************************
changed: [localhost]

TASK [docker : Add Docker apt repository key.] *************************************************************************************************
ok: [localhost]

TASK [docker : gather facts] *******************************************************************************************************************
ok: [localhost]

TASK [docker : Set the stable docker repository] ***********************************************************************************************
ok: [localhost]

TASK [docker : Install Docker] *****************************************************************************************************************
fatal: [localhost]: FAILED! => {"changed": false, "msg": "No package matching 'docker-ce' is available"}
    to retry, use: --limit @/home/user/repos/ansible-vps/src/ansible_create_workstation.retry

PLAY RECAP *************************************************************************************************************************************
localhost                  : ok=4    changed=1    unreachable=0    failed=1   

так что по какой-то причине пакет docker-ce не может быть найден, он недавно изменился или что-то еще я делаю неправильно?

и когда я смотрю в: / etc/apt / sources.list не содержит:

deb [arch=amd64] https://download.docker.com/linux/ubuntu  ...

запись.

23
задан u123
04.03.2023 10:06 Количество просмотров материала 3235
Распечатать страницу

3 ответа

нужно использовать edge вместо стабильный С bionic (18.04), оно находится в конюшне в будущем.

- name: Set the stable docker repository
  apt_repository: 
    repo: "deb [arch=amd64] https://download.docker.com/linux/ubuntu {{ ansible_lsb.codename }} edge"
    state: present
    update_cache: yes    
1
отвечен frbayart 2023-03-05 17:54

существует соответствующий пост на StackOverflow : Ansible: нет пакета для docker-ce.

принятый ответ говорит :

или вы можете использовать общий модуль диспетчера пакетов ОС, если версия Ansible >= 2.0:

- name: install docker
  package:
    name: docker-ce
    state: present

комментарий ниже говорит :

заменить $(lsb_release -cs) С xenial (для ubuntu 16.04) от вашего /etc/apt/sources.list и снова

0
отвечен harrymc 2023-03-05 20:11

можно также проверить ansible-galaxy первый и использовать хорошо протестированный ansible роль, как https://github.com/geerlingguy/ansible-role-docker. Не нужно изобретать велосипед.

0
отвечен 030 2023-03-05 22:28

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх