میرور جامع و فوقالعاده پرسرعت برای داکر، کوبرنتیز و هلم
یک درگاه متمرکز برای دسترسی مستقیم به Docker Hub، registry.k8s.io، gcr.io، quay.io، nvcr.io (NVIDIA)، GitLab، Red Hat UBI، Elastic و چارتهای Bitnami و HashiCorp Helm با استریم بدون بافر لایهها.
اسکریپت نصب و پیکربندی خودکار
این دستور را روی سرور لینوکس یا نودهای مستر/ورکر کوبرنتیز خود اجرا کنید. اسکریپت به صورت هوشمند محیط سرور شما را اسکن کرده و بر اساس ابزارهای نصبشده اقدامات زیر را انجام میدهد:
- تنظیم کانتینرد با متد انقلابی تکفایلی
_default(پوشش داینامیک تمام رجیستریها). - تنظیم
daemon.jsonداکر بدون بازنویسی یا حذف تنظیمات قبلی شما. - شناسایی و تنظیم اختصاصی کلاسترهای K3s و RKE2 از طریق
registries.yaml. - شناسایی رانتایم CRI-O و Podman و تنظیم
registries.conf.d. - تزریق خودکار کانفیگ میرور به نودهای فعال KinD (Kubernetes-in-Docker).
- رفع خطاهای تایماوت ابزار crictl و اتصال مستقیم به سوکت فعال.
- اضافه کردن مخازن ضدفیلتر بیتنامی و هشیکورپ در صورت وجود ابزار Helm.
curl -fsSL https://mirror.xodns.net/setup.sh | bash
کانفیگ انقلابی تکفایلی containerd نسخه ۱.۶ به بعد و ۲.۰
کانتینرد از ساختار فالبک _default پشتیبانی میکند. هنگام فراخوانی هر ایمیج، کانتینرد پارامتر ?ns=<upstream> را به mirror.xodns.net ارسال کرده و سرور گیتوی درخواست را دقیقاً به رجیستری مربوطه هدایت و ریدایرکتهای ابری آن را استریم میکند:
# ۱. پاکسازی پوشههای مجزا و ساخت پوشه واحد _default
sudo rm -rf /etc/containerd/certs.d/*
sudo mkdir -p /etc/containerd/certs.d/_default
# ۲. ایجاد فایل واحد hosts.toml
cat << 'EOF' | sudo tee /etc/containerd/certs.d/_default/hosts.toml
server = "https://_default"
[host."https://mirror.xodns.net"]
capabilities = ["pull", "resolve"]
EOF
# ۳. اطمینان از فعال بودن مسیر certs.d در تنظیمات کانتینرد
if [ -f "/etc/containerd/config.toml" ]; then
sudo sed -i 's|config_path = ""|config_path = "/etc/containerd/certs.d"|g' /etc/containerd/config.toml
fi
# ۴. ریاستارت کانتینرد
sudo systemctl restart containerd
تست و صحتسنجی فوری با ابزار crictl:
# تست ایمیج رسمی کوبرنتیز
crictl pull registry.k8s.io/pause:3.10
crictl pull registry.k8s.io/coredns/coredns:v1.11.3
# تست ایمیج داکر هاب
crictl pull docker.io/library/nginx:alpine
# تست پلاگین انویدیا کارت گرافیک
crictl pull nvcr.io/nvidia/k8s-device-plugin:v0.16.2
# تست شبکه سیلیوم
crictl pull quay.io/cilium/cilium:v1.16.1
پیکربندی شفاف داکر دیمن (Docker Daemon)
آدرس mirror.xodns.net را در فایل کانفیگ داکر اضافه نمایید. از این پس تمامی دستورات داکر مانند docker pull ubuntu یا اجرای docker compose به صورت خودکار و با نهایت سرعت از میرور دانلود میشوند:
{
"registry-mirrors": [
"https://mirror.xodns.net"
]
}
اعمال تنظیمات و ریاستارت داکر دیمن:
sudo systemctl daemon-reload && sudo systemctl restart docker
# تست دریافت ایمیج بدون فیلتر
docker pull ubuntu:latest
docker pull prom/prometheus:latest
docker pull grafana/loki:latest
مخازن چارتهای هلم (Bitnami و HashiCorp)
دور زدن کامل مسدودی و خطای ۴۰۳ برودکام و هشیکورپ جهت نصب مستقیم دیتابیسها و ابزارهای کلاد-نیتیو:
# ۱. افزودن مخزن بیتنامی (Postgres, Redis, Kafka, Nginx, MariaDB)
helm repo add bitnami https://mirror.xodns.net/charts/bitnami --force-update
# ۲. افزودن مخزن هشیکورپ (Vault, Consul, Nomad)
helm repo add hashicorp https://mirror.xodns.net/helm/hashicorp --force-update
# ۳. بهروزرسانی مخازن
helm repo update
# ۴. جستجو و نصب مستقیم چارتها
helm search repo bitnami/redis
helm search repo hashicorp/vault
دریافت مستقیم بدون تغییر کانفیگ (Direct CLI Pulls)
شما میتوانید بدون تغییر هیچ فایلی روی سیستم، آدرس میرور را به ابتدای نام هر ایمیج اضافه کرده و آن را دریافت نمایید:
# ایمیجهای داکر هاب (Docker Hub)
docker pull mirror.xodns.net/ubuntu:latest
docker pull mirror.xodns.net/prom/prometheus:latest
# ایمیجهای رسمی کوبرنتیز (registry.k8s.io)
docker pull mirror.xodns.net/k8s/pause:3.10
docker pull mirror.xodns.net/k8s/coredns/coredns:v1.11.3
# گوگل کانتینر رجیستری (Distroless / Kaniko)
docker pull mirror.xodns.net/gcr/distroless/static:latest
# انویدیا کودا و درایورهای گرافیک (CUDA)
docker pull mirror.xodns.net/nvcr/nvidia/k8s-device-plugin:v0.16.2
# رجیستری کوئی (Quay / Cilium CNI)
docker pull mirror.xodns.net/quay/cilium/cilium:v1.16.1
# کانتینر رجیستری گیتلب (GitLab Runner)
docker pull mirror.xodns.net/gitlab/gitlab-org/gitlab-runner:latest
# لینوکس سازمانی ردهت (Red Hat UBI)
docker pull mirror.xodns.net/redhat/ubi8/ubi:latest
# استک الستیک (Elastic Beats & Elasticsearch)
docker pull mirror.xodns.net/elastic/beats/filebeat:8.15.0
استک سازمانی کوبرنتیز (تست و تایید شده)
کامپوننتهای زیر به صورت زنده و با استفاده از همین درگاه روی کلاستر کوبرنتیز نصب شده و بدون هیچ اختلالی فعال هستند:
لودبالانسر MetalLB v0.14.9
پروتکل لایه ۲ جهت تخصیص خودکار IP های اختصاصی شبکه محلی (LAN) به سرویسهای LoadBalancer.
پایشگر Metrics Server v0.9.0
پایش پردازنده و رم نودها و پادها جهت فعالسازی دستورات kubectl top nodes و اتواسکیل HPA.
اینگرس کنترلر و Gateway API سیلیوم
مسیریابی پیشرفته ترافیک ورودی کلاستر بر پایه eBPF و اینگرس رسمی Cilium.
ذخیرهساز ابری MinIO S3 Object Storage
سرویس سازگار با AWS S3 روی پورت ۹۰۰۰ (API) و ۹۰۰۱ (Console) با دیسکهای پایدار PVC.
پروویژنر داینامیک Local-Path
کلاس ذخیرهسازی پیشفرض (StorageClass) جهت ساخت خودکار دیسکهای PersistentVolume روی نودها.
مانیتورینگ لاگ با Loki، Promtail و Filebeat
جمعآوری و استریم متمرکز لاگ پادها و سیستم به صورت Real-time به دشبورد گرافانا.
مخزن رسمی APT برای PostgreSQL و PostGIS حل تایماوت Fastly CDN
در سرورهای داخل ایران، دسترسی به apt.postgresql.org به دلیل اختلالات و بلاک بستهها روی آیپیهای Fastly CDN (پورت ۸۰ و ۴۴۳) با قطعی و تایماوت مکرر مواجه میشود. با استفاده از رله میرور، پکیجهای PostgreSQL، افزونه پرکاربرد PostGIS و ابزارهای مرتبط با حداکثر سرعت دانلود و نصب میشوند:
# ۱. دانلود کلید رسمی GPG پستگرس از طریق میرور
sudo curl -fsSL https://mirror.xodns.net/pub/repos/apt/ACCC4CF8.asc | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/postgresql.gpg
# ۲. افزودن مخزن رسمی PGDG با آدرس میرور
echo "deb [signed-by=/etc/apt/trusted.gpg.d/postgresql.gpg] https://mirror.xodns.net/pub/repos/apt $(lsb_release -cs)-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
# ۳. آپدیت و نصب پستگرس یا اکستنشن PostGIS
sudo apt-get update
sudo apt-get install -y postgresql-16 postgresql-16-postgis-3
FROM postgres:16
# جایگزینی آدرس مخزن به میرور برای رفع تایماوت در داخل ایران
RUN sed -i 's|apt.postgresql.org|mirror.xodns.net|g' /etc/apt/sources.list.d/pgdg.list
# آپدیت و نصب مستقیم اکستنشن پُستجیس بدون فیلتر
RUN apt-get update && apt-get install -y --no-install-recommends \
postgresql-16-postgis-3 \
&& rm -rf /var/lib/apt/lists/*
sudo sed -i 's|apt.postgresql.org|mirror.xodns.net|g' /etc/apt/sources.list.d/*pgdg* /etc/apt/sources.list.d/*postgres* 2>/dev/null || true
sudo apt-get update
نصب و راهاندازی رانر گیتلب (GitLab Runner) دور زدن خطای ۴۰۳ آمازون S3
گیتلب دانلود باینریها و پکیجهای رسمی رانر را از روی باکتهای AWS S3 و مخزن packages.gitlab.com برای سرورهای ایران مسدود کرده است. از طریق لینکهای زیر میتوانید باینری اصلی را بدون هیچ تحریمی دریافت و اجرا کنید:
# ۱. دانلود باینری رسمی لینوکس amd64 از طریق میرور
sudo curl -L --output /usr/local/bin/gitlab-runner \
"https://mirror.xodns.net/gitlab-runner/latest/binaries/gitlab-runner-linux-amd64"
# ۲. اعطای مجوز اجرایی
sudo chmod +x /usr/local/bin/gitlab-runner
# ۳. ساخت کاربر سیستمی و ثبت سرویس در لینوکس
sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash
sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
sudo gitlab-runner start
# ۴. رجیستر کردن رانر به پروژه یا گروه شما در گیتلب
sudo gitlab-runner register
docker run -d --name gitlab-runner --restart always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /srv/gitlab-runner/config:/etc/gitlab-runner \
mirror.xodns.net/gitlab/gitlab-org/gitlab-runner:latest