94 lines
2.4 KiB
YAML
94 lines
2.4 KiB
YAML
---
|
|
# Installation Docker + Docker Compose
|
|
# Cible : forgejo, nextcloud, tools (pas gateway)
|
|
|
|
- name: Installation Docker
|
|
hosts: forgejo:nextcloud:tools
|
|
become: true
|
|
|
|
tasks:
|
|
- name: Installation des prerequis
|
|
ansible.builtin.dnf:
|
|
name:
|
|
- dnf-utils
|
|
- device-mapper-persistent-data
|
|
- lvm2
|
|
state: present
|
|
tags: [docker]
|
|
|
|
- name: Ajout du repo Docker CE
|
|
ansible.builtin.yum_repository:
|
|
name: docker-ce
|
|
description: Docker CE Stable
|
|
baseurl: https://download.docker.com/linux/centos/$releasever/$basearch/stable
|
|
gpgcheck: true
|
|
gpgkey: https://download.docker.com/linux/centos/gpg
|
|
enabled: true
|
|
tags: [docker]
|
|
|
|
- name: Installation Docker CE + Compose plugin
|
|
ansible.builtin.dnf:
|
|
name:
|
|
- docker-ce
|
|
- docker-ce-cli
|
|
- containerd.io
|
|
- docker-compose-plugin
|
|
state: present
|
|
tags: [docker]
|
|
|
|
- name: Chargement des modules kernel requis par Docker
|
|
community.general.modprobe:
|
|
name: "{{ item }}"
|
|
state: present
|
|
loop:
|
|
- overlay
|
|
- br_netfilter
|
|
tags: [docker]
|
|
|
|
- name: Persistance des modules kernel au reboot
|
|
ansible.builtin.copy:
|
|
dest: /etc/modules-load.d/docker.conf
|
|
content: |
|
|
overlay
|
|
br_netfilter
|
|
mode: "0644"
|
|
tags: [docker]
|
|
|
|
- name: Parametres sysctl requis par Docker
|
|
ansible.posix.sysctl:
|
|
name: "{{ item.key }}"
|
|
value: "{{ item.value }}"
|
|
sysctl_set: true
|
|
reload: true
|
|
loop:
|
|
- { key: "net.bridge.bridge-nf-call-iptables", value: "1" }
|
|
- { key: "net.bridge.bridge-nf-call-ip6tables", value: "1" }
|
|
- { key: "net.ipv4.ip_forward", value: "1" }
|
|
tags: [docker]
|
|
|
|
- name: Demarrage containerd
|
|
ansible.builtin.systemd:
|
|
name: containerd
|
|
state: started
|
|
enabled: true
|
|
tags: [docker]
|
|
|
|
- name: Demarrage et activation Docker
|
|
ansible.builtin.systemd:
|
|
name: docker
|
|
state: started
|
|
enabled: true
|
|
tags: [docker]
|
|
|
|
- name: Ajout de {{ admin_user }} au groupe docker
|
|
ansible.builtin.user:
|
|
name: "{{ admin_user }}"
|
|
groups: docker
|
|
append: true
|
|
tags: [docker]
|
|
|
|
handlers:
|
|
- name: reload firewalld
|
|
ansible.builtin.systemd:
|
|
name: firewalld
|
|
state: reloaded
|