Dateien nach "playbooks" hochladen
This commit is contained in:
38
playbooks/update-all-containers.yaml
Normal file
38
playbooks/update-all-containers.yaml
Normal file
@@ -0,0 +1,38 @@
|
||||
---
|
||||
- name: Alle Docker-Container auf Host aktualisieren
|
||||
hosts: docker_hosts
|
||||
become: true
|
||||
vars:
|
||||
docker_host: unix://var/run/docker.sock
|
||||
|
||||
collections:
|
||||
- community.docker
|
||||
|
||||
tasks:
|
||||
- name: Alle Container (inkl. gestoppte) auflisten
|
||||
community.docker.docker_host_info:
|
||||
containers: true
|
||||
register: docker_info
|
||||
|
||||
- name: Images-Liste aus Containern extrahieren
|
||||
set_fact:
|
||||
container_images: >-
|
||||
{{ docker_info.containers
|
||||
| map(attribute='Image')
|
||||
| list
|
||||
| unique }}
|
||||
|
||||
- name: Neueste Images ziehen
|
||||
community.docker.docker_image:
|
||||
name: "{{ item }}"
|
||||
source: pull
|
||||
loop: "{{ container_images }}"
|
||||
register: pulled_images
|
||||
|
||||
- name: Container neu erstellen, wenn Image aktualisiert wurde
|
||||
community.docker.docker_container:
|
||||
name: "{{ item.Names[0] | regex_replace('^/', '') }}"
|
||||
image: "{{ item.Image }}"
|
||||
state: started
|
||||
recreate: true
|
||||
loop: "{{ docker_info.containers }}"
|
||||
Reference in New Issue
Block a user