diff --git a/playbooks/update-portainer-container.yaml b/playbooks/update-portainer-container.yaml new file mode 100644 index 0000000..d1cdbce --- /dev/null +++ b/playbooks/update-portainer-container.yaml @@ -0,0 +1,42 @@ +--- +- name: Update Portainer container + hosts: all + become: true + vars: + portainer_container_name: portainer + portainer_image: portainer/portainer-ce:lts + portainer_ports: + - "8000:8000" + - "9443:9443" + - "9000:9000" + portainer_volumes: + - "/var/run/docker.sock:/var/run/docker.sock" + - "portainer_data:/data" + + tasks: + - name: Ensure Portainer container is stopped + community.docker.docker_container: + name: "{{ portainer_container_name }}" + state: stopped + ignore_errors: true + + - name: Remove Portainer container if exists + community.docker.docker_container: + name: "{{ portainer_container_name }}" + state: absent + ignore_errors: true + + - name: Pull latest Portainer image + community.docker.docker_image: + name: "{{ portainer_image }}" + source: pull + + - name: Run Portainer container + community.docker.docker_container: + name: "{{ portainer_container_name }}" + image: "{{ portainer_image }}" + state: started + restart_policy: always + ports: "{{ portainer_ports }}" + volumes: "{{ portainer_volumes }}" + detach: true