docker/tasks/install.yaml

89 lines
2.3 KiB
YAML

---
# install docker - alpine
- name: "install docker - alpine"
when: "ansible_os_family == 'Alpine'"
block:
# install docker
- name: "install docker"
community.general.apk:
name: "{{ item }}"
update_cache: true
state: "present"
retries: 3
with_items:
- "docker"
- "docker-compose"
- "py3-docker-py"
# start and enable service
- name: "start and enable docker service"
ansible.builtin.service:
name: "docker"
state: "started"
enabled: true
# install docker - debian
- name: "install docker - debian"
when: "ansible_os_family == 'Debian'"
block:
# remove old docker.io packages
- name: "remove old docker.io packages"
ansible.builtin.apt:
name: "{{ item }}"
state: "absent"
purge: true
with_items:
- "containerd"
- "docker-compose"
- "docker-doc"
- "docker.io"
- "podman-docker"
- "runc"
# create keyrings directory
- name: "create keyrings directory"
ansible.builtin.file:
path: "/etc/apt/keyrings"
state: "directory"
mode: "0755"
# add docker gpg key
- name: "docker gpg key"
ansible.builtin.get_url:
url: "https://download.docker.com/linux/{{ ansible_distribution | lower }}/gpg"
dest: "/etc/apt/keyrings/docker.asc"
mode: "0644"
# add docker repository
- name: "docker repository"
ansible.builtin.apt_repository:
repo: "deb [arch={{ ansible_architecture | replace('x86_64', 'amd64') }}\
signed-by=/etc/apt/keyrings/docker.asc]\
https://download.docker.com/linux/{{ ansible_distribution | lower }}\
{{ ansible_distribution_release }} stable"
state: "present"
filename: "docker"
# install docker
- name: "install docker"
ansible.builtin.apt:
name: "{{ item }}"
state: "present"
update_cache: true
with_items:
- "containerd.io"
- "docker-ce"
- "docker-ce-cli"
- "docker-compose-plugin"
- "python3-pip"
- "python3-docker"
# nfs client
- name: "install nfs-common"
ansible.builtin.apt:
name: "nfs-common"
state: "present"