{"id":29353762,"url":"https://github.com/lunastev/mirror-docker","last_synced_at":"2025-08-23T09:08:34.173Z","repository":{"id":302885270,"uuid":"1013836842","full_name":"LunaStev/mirror-docker","owner":"LunaStev","description":"A ready-to-deploy Linux mirror server powered by Docker and rsync.","archived":false,"fork":false,"pushed_at":"2025-07-12T02:27:40.000Z","size":5,"stargazers_count":31,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-21T08:35:02.563Z","etag":null,"topics":["automation","cron","devops","docker","linux","linux-mirror","mirror","rsync"],"latest_commit_sha":null,"homepage":"https://mirror.lunastev.org","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LunaStev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":["LunaStev"],"custom":["https://www.lunastev.org/ko/sponsor"]}},"created_at":"2025-07-04T14:45:56.000Z","updated_at":"2025-08-06T14:02:32.000Z","dependencies_parsed_at":"2025-07-04T16:21:15.494Z","dependency_job_id":null,"html_url":"https://github.com/LunaStev/mirror-docker","commit_stats":null,"previous_names":["lunastev/mirror-docker"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/LunaStev/mirror-docker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LunaStev%2Fmirror-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LunaStev%2Fmirror-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LunaStev%2Fmirror-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LunaStev%2Fmirror-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LunaStev","download_url":"https://codeload.github.com/LunaStev/mirror-docker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LunaStev%2Fmirror-docker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271746302,"owners_count":24813556,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-23T02:00:09.327Z","response_time":69,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","cron","devops","docker","linux","linux-mirror","mirror","rsync"],"created_at":"2025-07-09T02:09:13.221Z","updated_at":"2025-08-23T09:08:34.133Z","avatar_url":"https://github.com/LunaStev.png","language":"Dockerfile","readme":"# mirror-docker\n\nA simple and extensible Linux mirror server powered by Docker, rsync, and nginx.\n\nThis project allows you to deploy your own Arch Linux and Ubuntu mirror servers using Docker. It automatically syncs with official upstream mirrors using `rsync`, and serves the contents via `nginx`. All components are containerized, cron-scheduled, and easy to manage or extend.\n\n---\n\n## ✅ Features\n\n- 🔄 Automatic synchronization via `rsync` with upstream mirrors\n- 🕒 Periodic syncing handled by `cron`\n- 📁 Directory listing via `nginx` with autoindex enabled\n- 🐳 Dockerized: Easy to deploy, rebuild, or expand\n- ⚙️ Supports Arch Linux and Ubuntu (extensible to others)\n- 🖥️ Ready for reverse proxy and domain-based access\n\n---\n\n## 📦 Requirements\n\n- Docker\n- Docker Compose\n- Basic shell or CMD environment\n\n---\n\n## 🚀 Getting Started\n\n### 1. Clone the repository\n\n```bash\ngit clone https://github.com/LunaStev/mirror-docker.git\ncd mirror-docker\n```\n\n### 2. Run\nOn Linux/macOS:\n\n```bash\n./docstart.sh\n```\n\nOn Windows (CMD):\n\n```cmd\ndocstart.bat\n```\n\nThis will build and run both Arch and Ubuntu mirror containers in the background.\n\n---\n\n## 🌐 Access URLs\n- Arch mirror: http://localhost:8081\n- Ubuntu mirror: http://localhost:8082\n\n---\n\n## ✍️ Customizing\n- Change `REMOTE` in `sync.sh` to select your preferred upstream rsync mirror\n- Modify nginx settings via `default.conf` or `nginx.conf`\n- Add TLS or domain routing by configuring a reverse proxy on the host machine\n\n---\n\n## 📄 License\n[MIT License](LICENSE)","funding_links":["https://github.com/sponsors/LunaStev","https://www.lunastev.org/ko/sponsor"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flunastev%2Fmirror-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flunastev%2Fmirror-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flunastev%2Fmirror-docker/lists"}