Files
ansible-config/docker_setup.yml
2026-04-20 16:27:53 +01:00

55 lines
1.5 KiB
YAML

---
- name: Install Docker on Debian or Ubuntu
hosts: all
become: true
tasks:
- name: Install prerequisite packages
ansible.builtin.apt:
pkg:
- apt-transport-https
- ca-certificates
- curl
- gnupg
- lsb-release
state: present
update_cache: true
- name: Create directory for Docker GPG key
ansible.builtin.file:
path: /etc/apt/keyrings
state: directory
mode: '0755'
- name: Add Docker GPG key
ansible.builtin.get_url:
url: "https://download.docker.com/linux/{{ ansible_distribution | lower }}/gpg"
dest: /etc/apt/keyrings/docker.gpg
mode: '0644'
- name: Add Docker Repository
ansible.builtin.apt_repository:
# This line dynamically detects 'debian' vs 'ubuntu' and 'bookworm' vs 'jammy'
repo: >
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg]
https://download.docker.com/linux/{{ ansible_distribution | lower }}
{{ ansible_distribution_release }} stable
state: present
filename: docker-ce
- name: Install Docker Engine and Plugins
ansible.builtin.apt:
name:
- docker-ce
- docker-ce-cli
- containerd.io
- docker-buildx-plugin
- docker-compose-plugin
state: present
update_cache: true
- name: Ensure Docker service is running
ansible.builtin.systemd:
name: docker
state: started
enabled: true