ce-infra/roles/docker/tasks/main.yml

51 lines
1.2 KiB
YAML

---
# Install Docker prerequisites
- name: Install Docker dependencies
ansible.builtin.apt:
name:
- ca-certificates
- curl
- gnupg
state: present
# Add Docker's official GPG key
- name: Create keyrings directory
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/debian/gpg
dest: /etc/apt/keyrings/docker.asc
mode: "0644"
# Add Docker apt repository for Debian
- name: Add Docker apt repository
ansible.builtin.apt_repository:
repo: >-
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.asc]
https://download.docker.com/linux/debian
{{ ansible_facts['distribution_release'] }} stable
state: present
filename: docker
# Install Docker Engine + Compose plugin
- name: Install Docker Engine
ansible.builtin.apt:
name:
- docker-ce
- docker-ce-cli
- containerd.io
- docker-compose-plugin
state: present
update_cache: true
# Ensure Docker service is running and enabled at boot
- name: Enable and start Docker
ansible.builtin.service:
name: docker
state: started
enabled: true