diff --git a/tasks/dozzle.yml b/tasks/dozzle.yml index 7dc9bc3..f21c90e 100644 --- a/tasks/dozzle.yml +++ b/tasks/dozzle.yml @@ -1,15 +1,8 @@ --- -- name: Pull docker image - community.docker.docker_image: - name: amir20/dozzle - tag: v8.14.4 - source: pull - register: docker_image - - name: Create/Update the dozzle container docker_container: name: dozzle - image: "{{ docker_image.image.RepoTags[0] }}" + image: amir20/dozzle:v8.14.4 restart_policy: unless-stopped networks: - name: proxy @@ -25,5 +18,7 @@ traefik.http.routers.dozzle.tls: "true" traefik.http.services.dozzle.loadbalancer.server.port: "8080" traefik.http.services.dozzle.loadbalancer.server.scheme: "http" - when: docker_image.changed - register: container_dozzle + pull: true + recreate: true + + diff --git a/tasks/gitea.yml b/tasks/gitea.yml index 5fb1d9a..ec02117 100644 --- a/tasks/gitea.yml +++ b/tasks/gitea.yml @@ -8,17 +8,10 @@ - "/data/gitea/data" - "/data/gitea/db" -- name: Pull docker image - community.docker.docker_image: - name: mysql - tag: 9 - source: pull - register: docker_image - - name: Create MySQL DB for Gitea docker_container: name: gitea_db - image: "{{ docker_image.image.RepoTags[0] }}" + image: mysql:9 restart_policy: unless-stopped networks: - name: proxy @@ -29,20 +22,13 @@ MYSQL_DATABASE: gitea volumes: - "/data/gitea/db:/var/lib/mysql" - when: docker_image.changed - register: container_mysql - -- name: Pull docker image - community.docker.docker_image: - name: gitea/gitea - tag: 1.24 - source: pull - register: docker_image + pull: true + recreate: true - name: Create the Gitea container docker_container: name: gitea - image: "{{ docker_image.image.RepoTags[0] }}" + image: gitea/gitea:1.24 restart_policy: unless-stopped networks: - name: proxy @@ -63,8 +49,8 @@ traefik.http.routers.gitea.tls: "true" traefik.http.routers.gitea.service: "gitea" traefik.http.services.gitea.loadbalancer.server.port: "3000" - when: docker_image.changed - register: container_gitea + pull: true + recreate: true - name: Create directories file: @@ -73,17 +59,10 @@ with_items: - "/data/opengist" -- name: Pull docker image - community.docker.docker_image: - name: ghcr.io/thomiceli/opengist - tag: 1.11 - source: pull - register: docker_image - - name: Create the opengist container docker_container: name: opengist - image: "{{ docker_image.image.RepoTags[0] }}" + image: ghcr.io/thomiceli/opengist:1.11 restart_policy: unless-stopped networks: - name: proxy @@ -104,5 +83,6 @@ traefik.http.routers.opengist.tls: "true" traefik.http.routers.opengist.service: "opengist" traefik.http.services.opengist.loadbalancer.server.port: "6157" - when: docker_image.changed - register: container_opengist + pull: true + recreate: true + \ No newline at end of file diff --git a/tasks/gotify.yml b/tasks/gotify.yml index cf3c3db..1552bf7 100644 --- a/tasks/gotify.yml +++ b/tasks/gotify.yml @@ -7,17 +7,10 @@ - "/data/gotify" - "/data/gotify/data" -- name: Pull docker image - community.docker.docker_image: - name: gotify/server - tag: 2.7.3 - source: pull - register: docker_image - - name: Create the gotify container docker_container: name: gotify - image: "{{ docker_image.image.RepoTags[0] }}" + image: gotify/server:2.7.3 restart_policy: unless-stopped networks: - name: proxy @@ -30,6 +23,6 @@ traefik.http.routers.gotify.tls: "true" traefik.http.routers.gotify.service: "gotify" traefik.http.services.gotify.loadbalancer.server.port: "80" - when: docker_image.changed - register: container_gotify - + pull: true + recreate: true + diff --git a/tasks/homepage.yml b/tasks/homepage.yml index 99bf247..02aa142 100644 --- a/tasks/homepage.yml +++ b/tasks/homepage.yml @@ -13,18 +13,10 @@ dest: /data/dashboard-icons update: yes -- name: Pull docker image - community.docker.docker_image: - name: ghcr.io/gethomepage/homepage - tag: v1.5.0 - source: pull - register: docker_image - - - name: Create the homepage container docker_container: name: homepage - image: "{{ docker_image.image.RepoTags[0] }}" + image: ghcr.io/gethomepage/homepage:v1.5.0 restart_policy: unless-stopped networks: - name: proxy @@ -42,5 +34,6 @@ traefik.http.routers.homepage.tls: "true" traefik.http.routers.homepage.service: "homepage" traefik.http.services.homepage.loadbalancer.server.port: "3000" - when: docker_image.changed - register: container_homepage + pull: true + recreate: true + diff --git a/tasks/invoiceninja.yml b/tasks/invoiceninja.yml index fd9d59b..be16bfc 100644 --- a/tasks/invoiceninja.yml +++ b/tasks/invoiceninja.yml @@ -56,17 +56,10 @@ UPDATE_SECRET=secret SENTRY_LARAVEL_DSN=https://32f01ea994744fa08a0f688769cef78a@sentry.invoicing.co/ -- name: Pull docker image - community.docker.docker_image: - name: invoiceninja/invoiceninja - tag: 5 - source: pull - register: docker_image - - name: Create the invoiceninja-app container docker_container: name: invoiceninja-app - image: "{{ docker_image.image.RepoTags[0] }}" + image: invoiceninja/invoiceninja:5 env_file: "/data/invoiceninja/stack.env" restart_policy: unless-stopped networks: @@ -75,20 +68,13 @@ - "/data/invoiceninja/config/hosts:/etc/hosts" - "/data/invoiceninja/docker/app/public:/var/www/app/public" - "/data/invoiceninja/docker/app/storage:/var/www/app/storage" - when: docker_image.changed - register: container_inv_app - -- name: Pull docker image - community.docker.docker_image: - name: nginx - tag: 1.29.2 - source: pull - register: docker_image + pull: true + recreate: true - name: Create the invoiceninja-nginx container docker_container: name: invoiceninja-nginx - image: "{{ docker_image.image.RepoTags[0] }}" + image: nginx:1.29.2 env_file: "/data/invoiceninja/stack.env" restart_policy: unless-stopped networks: @@ -104,8 +90,9 @@ traefik.http.routers.invoiceninja.tls: "true" traefik.http.services.invoiceninja.loadbalancer.server.port: "80" traefik.http.services.invoiceninja.loadbalancer.server.scheme: "http" - when: docker_image.changed - register: container_inv_nginx + pull: true + recreate: true + diff --git a/tasks/jellyseerr.yml b/tasks/jellyseerr.yml index 6a7d121..9cd3ceb 100644 --- a/tasks/jellyseerr.yml +++ b/tasks/jellyseerr.yml @@ -7,17 +7,10 @@ - "/data/jellyseerr" - "/data/jellyseerr/config" -- name: Pull docker image - community.docker.docker_image: - name: fallenbagel/jellyseerr:2.7.3 - tag: 2.7.3 - source: pull - register: docker_image - - name: Create the jellyseerr container docker_container: name: jellyseerr - image: "{{ docker_image.image.RepoTags[0] }}" + image: fallenbagel/jellyseerr:2.7.3 restart_policy: unless-stopped networks: - name: proxy @@ -33,5 +26,6 @@ traefik.http.routers.jellyseerr.entrypoints: "https" traefik.http.routers.jellyseerr.tls: "true" traefik.http.services.jellyseerr.loadbalancer.server.port: "5055" - when: docker_image.changed - register: container_jellyseerr \ No newline at end of file + pull: true + recreate: true + \ No newline at end of file diff --git a/tasks/lidarr.yml b/tasks/lidarr.yml index b8eee89..97ba967 100644 --- a/tasks/lidarr.yml +++ b/tasks/lidarr.yml @@ -7,19 +7,10 @@ - "/data/lidarr" - "/data/lidarr/config" -- name: Pull docker image - community.docker.docker_image: - name: ghcr.io/linuxserver/lidarr - tag: latest - source: pull - force_source: true - force_tag: true - register: docker_image - - name: Create the lidarr container docker_container: name: lidarr - image: "{{ docker_image.image.RepoTags[0] }}" + image: ghcr.io/linuxserver/lidarr:2.14.5 restart_policy: unless-stopped networks: - name: proxy @@ -38,5 +29,6 @@ traefik.http.routers.lidarr.entrypoints: "https" traefik.http.routers.lidarr.tls: "true" traefik.http.services.lidarr.loadbalancer.server.port: "8686" - when: docker_image.changed - register: container_gotify + pull: true + recreate: true + diff --git a/tasks/mariadb.yml b/tasks/mariadb.yml index 1760373..4228f95 100644 --- a/tasks/mariadb.yml +++ b/tasks/mariadb.yml @@ -6,18 +6,11 @@ with_items: - "/data/mariadb" - "/data/mariadb/config" - -- name: Pull docker image - community.docker.docker_image: - name: ghcr.io/linuxserver/mariadb - tag: 11.4.8 - source: pull - register: docker_image - + - name: Create the mariadb container docker_container: name: "mariadb" - image: "{{ docker_image.image.RepoTags[0] }}" + image: ghcr.io/linuxserver/mariadb:11.4.8 restart_policy: unless-stopped ports: - 3306:3306 diff --git a/tasks/mealie.yml b/tasks/mealie.yml index f086e79..630e75a 100644 --- a/tasks/mealie.yml +++ b/tasks/mealie.yml @@ -7,17 +7,10 @@ - "/data/mealie" - "/data/mealie/config" -- name: Pull docker image - community.docker.docker_image: - name: ghcr.io/mealie-recipes/mealie - tag: v3.3.2 - source: pull - register: docker_image - - name: Create the mealie container docker_container: name: mealie - image: "{{ docker_image.image.RepoTags[0] }}" + image: ghcr.io/mealie-recipes/mealie:v3.3.2 restart_policy: unless-stopped networks: - name: proxy @@ -41,5 +34,6 @@ traefik.http.routers.mealie.entrypoints: "https" traefik.http.routers.mealie.tls: "true" traefik.http.services.mealie.loadbalancer.server.port: "9000" - when: docker_image.changed - register: container_mealie + pull: true + recreate: true + diff --git a/tasks/mediawiki.yml b/tasks/mediawiki.yml index 411e9f8..14ec71d 100644 --- a/tasks/mediawiki.yml +++ b/tasks/mediawiki.yml @@ -6,17 +6,10 @@ with_items: - "/data/mediawiki" -- name: Pull docker image - community.docker.docker_image: - name: mediawiki - tag: 1.44.2 - source: pull - register: docker_image - - name: Create the wiki container docker_container: name: mediawiki - image: "{{ docker_image.image.RepoTags[0] }}" + image: mediawiki:1.44.2 restart_policy: unless-stopped networks: - name: proxy @@ -33,5 +26,5 @@ traefik.http.routers.wiki.entrypoints: "https" traefik.http.routers.wiki.tls: "true" traefik.http.services.wiki.loadbalancer.server.port: "80" - when: docker_image.changed - register: container_mediawiki \ No newline at end of file + pull: true + recreate: true \ No newline at end of file diff --git a/tasks/omada.yml b/tasks/omada.yml index 5a8503b..b138686 100644 --- a/tasks/omada.yml +++ b/tasks/omada.yml @@ -8,17 +8,10 @@ - "/data/omada/data" - "/data/omada/logs" -- name: Pull omada image - community.docker.docker_image: - name: mbentley/omada-controller - tag: "5.15" - source: pull - register: docker_image - - name: Create/Update the omada-controller container docker_container: name: omada - image: "{{ docker_image.image.RepoTags[0] }}" + image: mbentley/omada-controller:5.15 restart_policy: unless-stopped network_mode: host volumes: @@ -28,5 +21,6 @@ PUID: "1000" PGID: "1000" TZ: "Australia/Brisbane" - when: docker_image.changed - register: container_omada \ No newline at end of file + pull: true + recreate: true + \ No newline at end of file diff --git a/tasks/planka.yml b/tasks/planka.yml index 0df1bff..9a527cf 100644 --- a/tasks/planka.yml +++ b/tasks/planka.yml @@ -12,17 +12,10 @@ docker_network: name: planka -- name: Pull postgres image - community.docker.docker_image: - name: postgres - tag: "16-alpine" - source: pull - register: docker_image - - name: Create/update the postgres database docker_container: name: postgres-planka - image: "{{ docker_image.image.RepoTags[0] }}" + image: postgres:16-alpine restart_policy: unless-stopped env: POSTGRES_DB: planka @@ -34,20 +27,13 @@ - name: planka volumes: - "/data/planka/postgres:/var/lib/postgresql/data" - when: docker_image.changed - register: container_postgres_planka - -- name: Pull planka image - community.docker.docker_image: - name: ghcr.io/plankanban/planka - tag: "2.0.0-rc.4" - source: pull - register: docker_image + pull: true + recreate: true - name: Create/Update the planka container docker_container: name: planka - image: "{{ docker_image.image.RepoTags[0] }}" + image: ghcr.io/plankanban/planka:2.0.0-rc.4 restart_policy: unless-stopped networks: - name: proxy @@ -77,7 +63,7 @@ traefik.http.services.planka.loadbalancer.server.port: "1337" traefik.http.services.planka.loadbalancer.server.scheme: "http" traefik.docker.network: "proxy" - when: docker_image.changed - register: container_planka + pull: true + recreate: true \ No newline at end of file diff --git a/tasks/postgres.yml b/tasks/postgres.yml index 16708ed..084fd77 100644 --- a/tasks/postgres.yml +++ b/tasks/postgres.yml @@ -7,17 +7,10 @@ - "/data/postgres" - "/data/postgres/data" -- name: Pull docker image - community.docker.docker_image: - name: postgres - tag: 17.0-alpine - source: pull - register: docker_image - - name: Create the postgres container docker_container: name: postgres - image: "{{ docker_image.image.RepoTags[0] }}" + image: postgres:17.0-alpine restart_policy: unless-stopped ports: - 5432:5432 @@ -25,6 +18,6 @@ POSTGRES_PASSWORD: "{{POSTGRES_PASSWORD}}" volumes: - /data/postgres/data:/var/lib/postgresql/data - when: docker_image.changed - register: container_postgres + pull: true + recreate: true diff --git a/tasks/prowlarr.yml b/tasks/prowlarr.yml index 6f29e1a..0db128e 100644 --- a/tasks/prowlarr.yml +++ b/tasks/prowlarr.yml @@ -7,18 +7,10 @@ - "/data/prowlarr" - "/data/prowlarr/config" -- name: Pull docker image - community.docker.docker_image: - name: linuxserver/prowlarr - tag: 2.0.5 - source: pull - register: docker_image - - - name: Create the prowlarr container docker_container: name: prowlarr - image: "{{ docker_image.image.RepoTags[0] }}" + image: linuxserver/prowlarr:2.0.5 restart_policy: unless-stopped networks: - name: proxy @@ -36,5 +28,6 @@ traefik.http.routers.prowlarr.entrypoints: "https" traefik.http.routers.prowlarr.tls: "true" traefik.http.services.prowlarr.loadbalancer.server.port: "9696" - when: docker_image.changed - register: container_prowlarr \ No newline at end of file + pull: true + recreate: true + \ No newline at end of file diff --git a/tasks/pykms.yml b/tasks/pykms.yml index de1dd20..630d7dc 100644 --- a/tasks/pykms.yml +++ b/tasks/pykms.yml @@ -7,19 +7,10 @@ - "/data/pykms" - "/data/pykms/db" -- name: Pull docker image - community.docker.docker_image: - name: ghcr.io/py-kms-organization/py-kms - tag: latest - source: pull - force_source: true - force_tag: true - register: docker_image - - name: Create the pykms container docker_container: name: pykms - image: "{{ docker_image.image.RepoTags[0] }}" + image: ghcr.io/py-kms-organization/py-kms:latest@sha256:07e5295d563df9e8f5165109d79cf06e425559c8b7f465c3c22578f62f8dce59 restart_policy: unless-stopped ports: - "1688:1688" @@ -31,6 +22,7 @@ volumes: - "/data/pykms/db:/home/py-kms/db" - /etc/localtime:/etc/localtime:ro - when: docker_image.changed - register: container_pykms + pull: true + recreate: true + diff --git a/tasks/radarr.yml b/tasks/radarr.yml index b503152..6c8ef37 100644 --- a/tasks/radarr.yml +++ b/tasks/radarr.yml @@ -7,17 +7,10 @@ - "/data/radarr" - "/data/radarr/config" -- name: Pull docker image - community.docker.docker_image: - name: linuxserver/radarr - tag: 5.27.5 - source: pull - register: docker_image - - name: Create the radarr container docker_container: name: radarr - image: "{{ docker_image.image.RepoTags[0] }}" + image: linuxserver/radarr:5.27.5 restart_policy: unless-stopped networks: - name: proxy @@ -35,5 +28,6 @@ traefik.http.routers.radarr.entrypoints: "https" traefik.http.routers.radarr.tls: "true" traefik.http.services.radarr.loadbalancer.server.port: "7878" - when: docker_image.changed - register: container_radarr \ No newline at end of file + pull: true + recreate: true + \ No newline at end of file diff --git a/tasks/sabnzbd.yml b/tasks/sabnzbd.yml index 8fda57b..c80b54c 100644 --- a/tasks/sabnzbd.yml +++ b/tasks/sabnzbd.yml @@ -6,18 +6,11 @@ with_items: - "/data/sabnzbd" - "/data/sabnzbd/config" - -- name: Pull docker image - community.docker.docker_image: - name: linuxserver/sabnzbd - tag: 4.5.3 - source: pull - register: docker_image - name: Create the sabnzbd container docker_container: name: sabnzbd - image: "{{ docker_image.image.RepoTags[0] }}" + image: linuxserver/sabnzbd:4.5.3 restart_policy: unless-stopped networks: - name: proxy @@ -36,5 +29,6 @@ traefik.http.routers.sabnzbd.entrypoints: "https" traefik.http.routers.sabnzbd.tls: "true" traefik.http.services.sabnzbd.loadbalancer.server.port: "8080" - when: docker_image.changed - register: container_sabnzbd + pull: true + recreate: true + \ No newline at end of file diff --git a/tasks/sonarr.yml b/tasks/sonarr.yml index f0699b5..2225b02 100644 --- a/tasks/sonarr.yml +++ b/tasks/sonarr.yml @@ -7,17 +7,10 @@ - "/data/sonarr" - "/data/sonarr/config" -- name: Pull docker image - community.docker.docker_image: - name: linuxserver/sonarr - tag: 4.0.15 - source: pull - register: docker_image - - name: Create the sonarr container docker_container: name: sonarr - image: "{{ docker_image.image.RepoTags[0] }}" + image: linuxserver/sonarr:4.0.15 restart_policy: unless-stopped networks: - name: proxy @@ -35,5 +28,5 @@ traefik.http.routers.sonarr.entrypoints: "https" traefik.http.routers.sonarr.tls: "true" traefik.http.services.sonarr.loadbalancer.server.port: "8989" - when: docker_image.changed - register: container_sonarr + pull: true + recreate: true diff --git a/tasks/speedtest.yml b/tasks/speedtest.yml index 5c611f8..2188fd6 100644 --- a/tasks/speedtest.yml +++ b/tasks/speedtest.yml @@ -8,17 +8,10 @@ - "/data/speedtest/config" - "/data/speedtest/web" -- name: Pull docker image - community.docker.docker_image: - name: lscr.io/linuxserver/speedtest-tracker - tag: 1.6.8 - source: pull - register: docker_image - - name: Create the speedtest container docker_container: name: speedtest - image: "{{ docker_image.image.RepoTags[0] }}" + image: lscr.io/linuxserver/speedtest-tracker:1.6.8 restart_policy: unless-stopped networks: - name: proxy @@ -45,5 +38,6 @@ traefik.http.routers.speedtest.tls: "true" traefik.http.services.speedtest.loadbalancer.server.port: "80" traefik.http.services.speedtest.loadbalancer.server.scheme: "http" - when: docker_image.changed - register: container_speedtest + pull: true + recreate: true + diff --git a/tasks/traefik.yml b/tasks/traefik.yml index ad0157a..3ee45d7 100644 --- a/tasks/traefik.yml +++ b/tasks/traefik.yml @@ -32,17 +32,10 @@ group: root # GID Traefik runs as mode: "0600" -- name: Pull docker image - community.docker.docker_image: - name: traefik - tag: v3.5 - source: pull - register: docker_image - - name: Create traefik Container docker_container: name: traefik - image: "{{ docker_image.image.RepoTags[0] }}" + image: traefik:v3.5 restart_policy: unless-stopped networks: - name: "proxy" @@ -77,5 +70,6 @@ traefik.http.routers.traefik-secure.tls.domains[1].main: "comprofix.xyz" traefik.http.routers.traefik-secure.tls.domains[1].sans: "*.comprofix.xyz" traefik.http.routers.traefik-secure.service: "api@internal" - when: docker_image.changed - register: container_traefik + pull: true + recreate: true + \ No newline at end of file diff --git a/tasks/vaultwarden.yml b/tasks/vaultwarden.yml index 770fa21..a28dcb1 100644 --- a/tasks/vaultwarden.yml +++ b/tasks/vaultwarden.yml @@ -10,17 +10,10 @@ - "/data/vaultwardenbackup/config" - "/data/vaultwardenbackup/config/rclone" -- name: Pull docker image - community.docker.docker_image: - name: vaultwarden/server - tag: 1.34.3 - source: pull - register: docker_image - - name: Create the vaultwarden container docker_container: name: vaultwarden - image: "{{ docker_image.image.RepoTags[0] }}" + image: vaultwarden/server:1.34.3 restart_policy: unless-stopped networks: - name: proxy @@ -37,8 +30,9 @@ traefik.http.routers.vaultwarden.tls: "true" traefik.http.routers.vaultwarden.service: "vaultwarden" traefik.http.services.vaultwarden.loadbalancer.server.port: "80" - when: docker_image.changed - register: container_vaultwarden + pull: true + recreate: true + - name: Copy rclone config copy: @@ -47,17 +41,10 @@ decrypt: yes mode: "0600" -- name: Pull docker image - community.docker.docker_image: - name: ttionya/vaultwarden-backup - tag: 1.25.2 - source: pull - register: docker_image - - name: Create the vaultwarden container docker_container: name: vaultwardenbackup - image: "{{ docker_image.image.RepoTags[0] }}" + image: ttionya/vaultwarden-backup:1.25.2 restart_policy: unless-stopped env: PUID: "1000" @@ -69,8 +56,8 @@ volumes: - "/data/vaultwarden/data:/bitwarden/data" - "/data/vaultwardenbackup/config:/config" - when: docker_image.changed - register: container_vaultwardenbackup + pull: true + recreate: true