version: "3.9" services: # Rocky Linux 9 mirror rocky9-sync: image: rockylinux:9 container_name: rocky9-sync user: root volumes: - /share/docker_data/repo_mirror/data/rocky/9:/repos # mirror storage - /share/docker_data/repo_mirror/scripts/rocky9.sh:/rocky9.sh command: /rocky9.sh restart: "no" # Debian mirror debian-sync: image: ubuntu:24.04 container_name: debian-sync user: root volumes: - /share/docker_data/repo_mirror/data/debian:/mirror - /share/docker_data/repo_mirror/scripts/debian.sh:/debian.sh command: /debian.sh restart: "no" # Ubuntu mirror ubuntu-sync: image: ubuntu:24.04 container_name: ubuntu-sync user: root volumes: - /share/docker_data/repo_mirror/data/ubuntu:/mirror - /share/docker_data/repo_mirror/scripts/ubuntu.sh:/ubuntu.sh command: /ubuntu.sh restart: "no" # Optional: Nginx to serve both mirrors nginx: image: nginx:1.28 container_name: mirror-nginx ports: - "8383:80" volumes: - /media/nas/qda_1/repos/docker/:/usr/share/nginx/html/docker - /media/m-server/repos/ubuntu/:/usr/share/nginx/html/ubuntu - /media/nas/qda_1/repos/rocky/:/usr/share/nginx/html/rocky - /share/docker_data/repo_mirror/data/debian:/usr/share/nginx/html/debian - /share/docker_data/repo_mirror/config/nginx.conf:/etc/nginx/nginx.conf:ro restart: unless-stopped