Skip to main content

allow package installations to stay local at another docker container

Project description

docker mirror packages repo

Allows to simulate upstream centos / ubuntu / opensuse package repository servers by using a docker container which contains a local package mirror.

The scripts in this project allow to build a local package mirror using rsync. When ready the rpm/deb packages get copied into a docker image which has a small web script that mimics the mirrorlist function of the original upstream package repository servers.

There is a helper script docker_mirror which can start a mirror docker image as container. The --add-hosts option prints the line for "docker run" so that calls to the original upstream package server get diverted to the ip address of the locally running docker container.

Effectively all "yum install" or "zypper install" or "apt-get install" commands run locally in the docker network. No internet access required. Without changing repo files. Without special proxy host setups. This is faster, allows for reproducible install tests, and it can be used in a disconnected environment.

The scripting has also been used with docker-compose and ansible deployment setups. Over the years a number of package repos have been tested - starting with distros from 2016 until today. Even when the upstream package repositories get disabled, for being out of support, the local docker mirrors continue to work.


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

docker-mirror-packages-repo-1.7.7123.tar.gz (80.1 kB view details)

Uploaded Source

File details

Details for the file docker-mirror-packages-repo-1.7.7123.tar.gz.

File metadata

File hashes

Hashes for docker-mirror-packages-repo-1.7.7123.tar.gz
Algorithm Hash digest
SHA256 5c98c82817c74d897d27d44768163cc9eb1bd3c2432fbb27acc628d461c67504
MD5 7e7aae0e826e86706d26d64fa85b96f6
BLAKE2b-256 2488aa572d79aaff72a86cc1af2948676c915062c2ba78797863c7d28ffc255e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page