47 lines
1.2 KiB
YAML
47 lines
1.2 KiB
YAML
# vim: ft=yaml.ansible
|
|
# code: language=ansible
|
|
---
|
|
- name: Add Docker PGP key
|
|
ansible.builtin.apt_key:
|
|
keyserver: keyserver.ubuntu.com
|
|
id: '0x8D81803C0EBFCD88'
|
|
state: present
|
|
|
|
- name: Add Docker apt repository
|
|
ansible.builtin.apt_repository:
|
|
repo: 'deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian bullseye stable'
|
|
update_cache: true
|
|
state: present
|
|
|
|
- name: Install Docker
|
|
ansible.builtin.apt:
|
|
name: "{{ pkgs }}"
|
|
state: present
|
|
vars:
|
|
pkgs:
|
|
- docker-ce
|
|
- docker-compose-plugin
|
|
|
|
- name: Copy Docker daemon config file
|
|
ansible.builtin.template:
|
|
src: etc/docker/daemon.json.j2
|
|
dest: /etc/docker/daemon.json
|
|
owner: root
|
|
mode: u=rw,g=r,o=r
|
|
notify: Reload Docker daemon
|
|
|
|
- name: Ensure Docker daemon is enabled and running
|
|
ansible.builtin.service:
|
|
name: docker
|
|
enabled: true
|
|
state: started
|
|
|
|
- name: Configure cron job to prune unused Docker data weekly
|
|
ansible.builtin.cron:
|
|
name: Prune unused Docker data
|
|
cron_file: ansible_docker_prune
|
|
job: 'docker system prune -fa && docker volume prune -fa'
|
|
special_time: weekly
|
|
user: root
|
|
state: present
|