Files
OCI_Build/playbooks/install_docker.yml
T
2024-12-09 16:33:22 +00:00

83 lines
2.2 KiB
YAML

- name: Install Docker on Debian, Ubuntu, or Raspbian
hosts: Docker
become: true
gather_facts: true
tasks:
- name: Install required system packages
apt:
name:
- apt-transport-https
- ca-certificates
- curl
- software-properties-common
- virtualenv
state: latest
update_cache: true
when: ansible_os_family == "Debian"
- name: Add Docker GPG apt Key
apt_key:
url: https://download.docker.com/linux/ubuntu/gpg
state: present
when: ansible_os_family == "Debian"
- name: Add Docker Repository
apt_repository:
repo: deb https://download.docker.com/linux/ubuntu focal stable
state: present
when: ansible_os_family == "Debian"
- name: Update apt and install Docker packages
apt:
name:
- docker-ce
- docker-ce-cli
- containerd.io
- docker-compose
state: latest
update_cache: true
when: ansible_os_family == "Debian"
- name: Install Docker dependencies for RedHat/CentOS
package:
name:
- yum-utils
- device-mapper-persistent-data
- lvm2
state: present
when: ansible_os_family == "RedHat"
- name: Add Docker repository for RedHat/CentOS
yum_repository:
name: docker-ce-stable
description: Docker CE Stable - $basearch
baseurl: https://download.docker.com/linux/centos/7/$basearch/stable
enabled: yes
gpgcheck: yes
gpgkey: https://download.docker.com/linux/centos/gpg
when: ansible_os_family == "RedHat"
- name: Install Docker for RedHat/CentOS
package:
name: docker-ce
state: present
when: ansible_os_family == "RedHat"
- name: Add authenticated user to Docker group
user:
name: "{{ ansible_user }}"
groups: docker
append: yes
when: ansible_os_family == "Debian" or ansible_os_family == "RedHat"
- name: Ensure Docker service is enabled and started
systemd:
name: docker
enabled: yes
state: started
- name: Reset connection to refresh user group membership
meta: reset_connection