A smart, caching proxy for Docker, designed to bypass registry restrictions and accelerate image pulls.
Project description
MirrorBox 🚀
A smart, caching proxy for Docker, designed to bypass registry restrictions and accelerate your image pulls.
MirrorBox is a modern command-line tool that acts as a smart gateway for Docker. It intelligently routes your Docker image requests through the fastest available mirrors, caches images locally for offline access, and seamlessly integrates with your development workflow.
✨ Key Features
- ✅ Accelerated Image Pulls: Automatically benchmarks and selects the fastest, most reliable mirror before every download, dramatically speeding up
docker pull. - ✅ Seamless Docker Compose Integration: Replace
docker-compose upwithmirrorbox compose up. MirrorBox pre-fetches all required images for your services, ensuring your projects start without delay. - ✅ Intelligent Local Caching: Pulled images are automatically cached locally. Subsequent requests are served instantly from your disk, saving bandwidth and enabling offline work.
- ✅ Full Cache Management: Simple commands to
list,save, andremovecached images. - ✅ Configuration Control: Customize MirrorBox. Set a
priority_mirrorto always use your favorite registry first. - ✅ Complete Docker Integration: List all images currently in your Docker daemon with
list-images. - ✅ Live Monitoring & Reporting: Get a live dashboard of mirror statuses with
monitor startand review performance history withreport show.
📦 Installation & Quick Start
MirrorBox requires Python 3.10+.
It is strongly recommended to install it inside a virtual environment to avoid conflicts with system packages.
1️⃣ Create a Virtual Environment
python3 -m venv venv
2️⃣ Activate the Environment
source venv/bin/activate (Linux)
venv\Scripts\activate.bat (Windonws)
3️⃣ Install MirrorBox
pip install mirrorbox
🛠️ Usage / Commands
mirrorbox start
✨ New in v1.0: The Graphical User Interface!
For a more visual and user-friendly experience, you can now launch the MirrorBox desktop application.
Simply run:
mirrorbox open
The GUI allows you to manage all key features of MirrorBox from a beautiful and modern interface.
Below is a detailed guide to available commands:
1. Basic Mirror & Image Commands
Check Mirror Status
mirrorbox list-mirrors
Search for an Image
mirrorbox search nginx:latest
Pull an Image (Smart Pull)
mirrorbox pull ubuntu:22.04
List Local Docker Images
mirrorbox list-images
2. Docker Compose Integration
mirrorbox compose up -d --build
3. Cache Management
List Cached Images
mirrorbox cache list
Save an Image to Cache
mirrorbox cache save httpd:latest
Remove Cached Images
mirrorbox cache remove httpd-latest.tar nginx-latest.tar
4. Configuration
View Current Settings
mirrorbox config show
Set a Priority Mirror
mirrorbox config set-priority focker.ir
Unset Priority Mirror
mirrorbox config unset-priority
5. Monitoring & Reporting
Show History Report
mirrorbox report show --limit 15
Launch Live Dashboard
mirrorbox monitor start --interval 5
📄 License
Copyright (c) 2025 Pouya Rezapour. All Rights Reserved. See the LICENSE file for more details.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mirrorbox-1.0.0.tar.gz.
File metadata
- Download URL: mirrorbox-1.0.0.tar.gz
- Upload date:
- Size: 16.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3de9c0947c7f06c0f75835b075fbdad0cb343b91c594f20ded5c2d21f6ac7b68
|
|
| MD5 |
1e3c7f96ad3f10d85c046c225b136874
|
|
| BLAKE2b-256 |
cb444a0bd22184d5b07462fa4d17c02551d685ac033a732bb4f7acbcf9880d30
|
File details
Details for the file mirrorbox-1.0.0-py3-none-any.whl.
File metadata
- Download URL: mirrorbox-1.0.0-py3-none-any.whl
- Upload date:
- Size: 18.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
70814b75d64fa02f1899e9c13fad39ce2a32896d9e8dea71cd51264a7f5deb24
|
|
| MD5 |
79196410bdeb8929d4faf86ff3237d7f
|
|
| BLAKE2b-256 |
a84bdf175391f40b28cc696b8cae8674591c69fa46f2f29a60494c97b5478163
|