Mit ansible ist kein passendes Paket "docker-ce" verfügbar

825
u123

Auf ubuntu 18.04 verwende ich diese ansible (Version 2.5.1) Rolle:

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

Mit diesem Spielbuch:

---   - 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={} state=latest with_items: - nano - git - htop - gitg  roles: -  

Ich erhalte jedoch den folgenden Fehler:

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  

Aus irgendeinem Grund kann das Docker-ce-Paket nicht gefunden werden. Hat sich das in letzter Zeit geändert oder ist es etwas anderes, was ich falsch mache?

Auch wenn ich in /etc/apt/sources.list schaue, enthält es kein:

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

Eintrag.

0

3 Antworten auf die Frage

1
frbayart

Sie müssen edge anstelle von stable mit bionic (18.04) verwenden, es wird in Zukunft stabil sein.

- 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  
0
harrymc

Zu StackOverflow gibt es einen passenden Beitrag: Ansible: Für Docker-ce ist kein Paket verfügbar .

Die akzeptierte Antwort sagt:

Oder Sie können ein generisches OS-Paketmanagermodul verwenden, wenn die Ansible-Version> = 2.0 ist:

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

Ein Kommentar unten sagt:

ersetzen Sie es $(lsb_release -cs)mit xenial(für Ubuntu 16.04) /etc/apt/sources.listund versuchen Sie es erneut

0
030

Man könnte auch die Ansible-Galaxie zuerst überprüfen und eine gut getestete Ansible-Rolle wie https://github.com/geerlingguy/ansible-role-docker verwenden . Das Rad muss nicht neu erfunden werden.