Files
ansible/docs/superpowers/specs/2026-04-01-docker-version-updates-design.md

2.1 KiB

Design Specification: Docker Service Version Updates (Jellyfin 10.11.7 & Gitea 1.25.5)

1. Goal

Redeploy Docker services on the docker-host11 host to apply specific and latest image version updates:

  • Jellyfin: 10.1110.11.7
  • Gitea: 1.24-rootless1.25.5-rootless

2. Context

Following the initial redeployment, the user requested further updates to specific versions. These changes will be applied to vars/group_vars/docker/docker.yaml and deployed via the docker.yaml playbook.

3. Implementation Approach: Full Playbook Execution

This approach ensures the entire state of the Docker host matches the defined configuration, including the new versions.

3.1 Targeted Components

  • Inventory: vars/docker.ini
  • Playbook: playbooks/docker.yaml
  • Target Host: docker-host11

3.2 Workflow Details

  1. Configuration Update: Update vars/group_vars/docker/docker.yaml with the target image versions.
  2. Host Verification: Confirm accessibility of docker-host11 via Ansible.
  3. Playbook Execution: Run ansible-playbook -i vars/docker.ini playbooks/docker.yaml.
  4. Template Application: The docker_host role will update /opt/docker/compose/compose.yaml.
  5. Container Recreation: Docker Compose will detect the image change, pull the new images (10.11.7 and 1.25.5-rootless), and recreate the containers.

4. Success Criteria & Verification

  • Criteria 1: Playbook completes without failure.
  • Criteria 2: Jellyfin container is running image jellyfin/jellyfin:10.11.7.
  • Criteria 3: Gitea container is running image gitea/gitea:1.25.5-rootless.

Verification Steps

  • Run ansible -i vars/docker.ini docker_host -m shell -a "docker ps --format '{{.Names}}: {{.Image}}'" to verify running versions.
  • Confirm container health status.

5. Potential Risks

  • Service Downtime: Containers will restart during image update.
  • Database Migrations: Gitea 1.25 may have database migrations from 1.24. This is handled internally by the Gitea container on startup.
  • Pull Failures: Depends on external network connectivity.