netbox-ansible/roles/docker-install/tasks/main.yml
2025-09-25 19:24:11 -04:00

70 lines
1.6 KiB
YAML

---
- name: Add Docker GPG key
apt_key:
url: https://download.docker.com/linux/ubuntu/gpg
state: present
tags:
- docker-install
- gpg-key
- name: Add Docker repository
apt_repository:
repo: "deb [arch=amd64] https://download.docker.com/linux/ubuntu {{ ansible_distribution_release }} stable"
state: present
update_cache: yes
tags:
- docker-install
- repository
- name: Install Docker packages
apt:
name:
- docker-ce
- docker-ce-cli
- containerd.io
- docker-buildx-plugin
- docker-compose-plugin
state: present
tags:
- docker-install
- packages
- name: Start and enable Docker service
systemd:
name: docker
state: started
enabled: yes
tags:
- docker-install
- service
- name: Add users to docker group
user:
name: "{{ item }}"
groups: docker
append: yes
loop: "{{ docker_users }}"
tags:
- docker-install
- users
- name: Install Docker Compose standalone (if enabled)
get_url:
url: "https://github.com/docker/compose/releases/download/v{{ docker_compose_version }}/docker-compose-linux-x86_64"
dest: "{{ docker_compose_install_path }}"
mode: '0755'
when: docker_install_compose
tags:
- docker-install
- compose
- name: Configure Docker daemon (if config provided)
copy:
content: "{{ docker_daemon_config | to_nice_json }}"
dest: /etc/docker/daemon.json
mode: '0644'
when: docker_daemon_config is defined and docker_daemon_config | length > 0
notify: restart docker
tags:
- docker-install
- daemon-config