You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

68 lines
1.7 KiB

---
- name: install system dependencies
package:
name: "{{ item }}"
state: present
register: _dependencies_install
retries: 2
until: _dependencies_install | success
with_items: "{{ docker_dependencies }}"
- name: remove old versions
package:
name: "{{ item }}"
state: absent
with_items:
- lxc-docker
- docker-engine
- docker
- docker.io
- block:
- name: download GPG key
get_url:
url: "https://download.docker.com/linux/ubuntu/gpg"
dest: "/tmp/docker.gpg"
become: no
run_once: true
delegate_to: localhost
- name: add GPG key
apt_key:
data: "{{ lookup('file', '/tmp/docker.gpg') }}"
state: present
- name: add docker repository | Debian
apt_repository:
repo: "deb [arch=amd64] https://download.docker.com/linux/ubuntu {{ ansible_distribution_release }} stable"
state: present
when: ansible_os_family == "Debian"
- name: add docker repository | RedHat
yum_repository:
name: docker-ce-stable
description: "Docker CE Stable - $basearch"
baseurl: "https://download.docker.com/linux/{{ ansible_distribution | lower }}/$releasever/$basearch/stable"
gpgcheck: true
gpgkey: "https://download.docker.com/linux/{{ ansible_distribution | lower }}/gpg"
when: ansible_os_family == "RedHat" and ansible_distribution != "OracleLinux"
- name: Install docker
package:
name: "{{ docker_package }}"
state: "{{ (docker_version == 'latest') | ternary('latest', 'present') }}"
update_cache: yes
register: __ret
retries: 10
until: __ret is succeeded
notify:
- restart docker
- name: ensure docker-py module is installed
pip:
name: docker-py
version: 1.9.0
when: dockerpy