سرویس فعال — رایگان برای همهٔ سرورها

آینهٔ داخلی apt، Docker‏، npm و PyPI

شانزده آینهٔ داخلی برای apt‏، Docker‏، npm‏، PyPI‏، Composer‏، RubyGems‏، Alpine‏، Go و مخزن‌های دیگر. روی سرورهای Debian‏، Ubuntu و Alpine منبع apt و apk از همان لحظهٔ ساخت سرور خودکار روی آینه تنظیم می‌شود؛ بقیه با یک خط. رایگان برای همهٔ سرورها.

حساب دارید؟ وارد شوید

بدون هزینهٔ جداگانه،  ۱۶ آینه،  تنظیم خودکار apt و apk

منبع apt روی سرور تازه‌ساخته

mirror.iranclaud.ir

معرفی

آینهٔ بسته‌ها داخل دیتاسنتر ایران‌کلاد

سرورهای Debian‏، Ubuntu و Alpine به‌صورت خودکار برای apt و apk از آینهٔ داخلی استفاده می‌کنند و Docker‏، npm‏، PyPI‏، Composer‏، RubyGems و بقیه با یک خط تنظیم به آن وصل می‌شوند. بسته‌ای که یک بار دریافت شده، به‌جای عبور از اینترنت بین‌المللی از شبکهٔ داخلی دیتاسنتر تحویل داده می‌شود.

این کار نصب، به‌روزرسانی و استقرار را از نوسان مسیر بین‌المللی جدا می‌کند و جلوی بسیاری از خطاهای دانلود را می‌گیرد. شانزده آینه رایگان در دسترس‌اند و دستور تنظیم هر کدام در پنل آماده است.

آینهٔ فعال
۱۶
سیستم‌عامل، کانتینر و زبان‌ها
مسیر دانلود
داخلی
از کش داخل دیتاسنتر
برای همهٔ سرورها
رایگان
بدون هزینهٔ جداگانه
تنظیم apt و apk
خودکار
Debian‏، Ubuntu و Alpine

پوشش

شانزده آینه، از سیستم‌عامل تا زبان‌ها

همان فهرستی که در صفحهٔ وضعیت سرویس‌ها پایش می‌شود. دو مورد اول خودکار تنظیم می‌شوند؛ برای بقیه، کلید یا دستور تنظیم زیر نامشان آمده و متن کامل در پنل آمادهٔ کپی است.

  • آینهٔ دبیان / اوبونتو

    خودکار هنگام ساخت سرور

  • آینهٔ Alpine Linux

    خودکار هنگام ساخت سرور

  • آینهٔ مخازن apt شخص‌ثالث

    Docker CE‏، NodeSource و Kubernetes

  • آینهٔ داکر

    registry-mirrors

  • آینهٔ npm

    npm config set registry

  • آینهٔ پایتون (PyPI)

    pip.conf: index-url

  • آینهٔ Composer (PHP)

    composer config -g repos.packagist

  • آینهٔ RubyGems

    gem sources --add

  • آینهٔ ماژول‌های Go

    GOPROXY

  • آینهٔ Maven (Java)

    settings.xml

  • آینهٔ Rust (crates)

    .cargo/config.toml

  • آینهٔ NuGet (.NET)

    dotnet nuget add source

  • آینهٔ Conda

    channel_alias

  • آینهٔ R (CRAN)

    options(repos = …)

  • آینهٔ باینری Node.js

    nvm · n

  • آینهٔ فایل‌های عمومی

    ISO نصب و فایل‌های پرکاربرد

yum و dnf (RHEL‏، Rocky‏، Alma) هنوز آینه نمی‌شوند.

امکانات

بسته‌های جهانی از شبکهٔ داخلی

شانزده آینه

apt‏، apk‏، Docker‏، npm‏، PyPI‏، Composer‏، RubyGems‏، Go‏، Rust‏، Maven‏، Conda‏، NuGet‏، CRAN‏، Node.js و فایل‌های ISO.

دانلود از شبکهٔ داخلی

بسته‌ای که یک بار دریافت شده از داخل دیتاسنتر می‌آید و به کیفیت مسیر بین‌المللی وابسته نیست.

تنظیم خودکار هنگام ساخت

هر سرور Debian‏، Ubuntu یا Alpine خودکار به آینه وصل می‌شود و فایل منبع اصلی پشتیبان‌گیری می‌شود.

کش مشترک

هر بسته فقط یک بار از خارج دریافت می‌شود؛ سرورهای بعدی همان فایل را از کش داخلی می‌گیرند.

وضعیت شفاف

وضعیت لحظه‌ای هر آینه و زمان آخرین بررسی سلامت در پنل و صفحهٔ وضعیت سرویس‌ها.

بستهٔ رسمی و امضاشده

فایل‌ها همان فایل‌های مخزن رسمی‌اند و apt و apk مثل همیشه امضای آن‌ها را بررسی می‌کنند.

بررسی کنید که دانلود از آینه است

یک دستور برای دیدن منبع و یک دستور برای دیدن مسیر دانلود؛ همهٔ خطوط Get باید از mirror.iranclaud.ir باشند.

check-mirror.sh
cat /etc/apt/sources.list.d/iranclaud.list
# deb https://mirror.iranclaud.ir/ubuntu/ noble main restricted universe multiverse
# deb https://mirror.iranclaud.ir/ubuntu/ noble-updates ...
# deb https://mirror.iranclaud.ir/ubuntu/ noble-security ...

apt-get update
# Get:1 https://mirror.iranclaud.ir/ubuntu noble InRelease
# Get:2 https://mirror.iranclaud.ir/ubuntu noble-updates InRelease
# ...

چرا کار می‌کند

چرا کش داخلی زمان استقرار را قابل پیش‌بینی می‌کند

هر سرور Ubuntu که تازه ساخته می‌شود، اولین کاری که می‌کند apt update است و ده‌ها مگابایت فهرست بسته دانلود می‌کند. روی مسیر بین‌المللی، سرعت و پایداری این دانلود قابل پیش‌بینی نیست؛ اگر هر روز چند سرور می‌سازید، همین انتظارها جمع می‌شوند.

با کش داخلی، فقط اولین درخواست هر فایل از خارج گرفته می‌شود. سرور دوم به بعد همان فایل را از شبکهٔ داخلی دیتاسنتر می‌گیرد. وقتی خط لولهٔ CI شما هر روز سرورهای تازه می‌سازد، بیشتر دانلودها دیگر از مرز عبور نمی‌کنند و زمان ساخت قابل پیش‌بینی‌تر می‌شود.

بیشتر آینه‌ها کش عبوری‌اند: بسته همان فایل امضاشدهٔ مخزن رسمی است و apt یا apk مثل همیشه امضای آن را بررسی می‌کند. اگر بخواهید به منبع اصلی برگردید، نسخهٔ پشتیبان فایل منبع روی سرور نگه داشته شده است.

  • بسته‌های کش‌شده از شبکهٔ داخلی
  • هر بسته فقط یک بار از خارج
  • همان apt-get همیشگی، فقط منبع متفاوت
  • فقط بسته‌های رسمی و امضاشده

مقایسه

با آینه و بدون آینه

ویژگی با آینهٔ ایران‌کلاد بدون آینه
مسیر apt update شبکهٔ داخلی مسیر بین‌المللی
apt install برای بستهٔ کش‌شده از کش داخلی هر بار از خارج
docker pull از آینهٔ داکر از Docker Hub
npm install از آینهٔ npm از رجیستری خارجی
تنظیم دستی روی Debian‏، Ubuntu و Alpine لازم نیست لازم
پایداری برای CI دارد وابسته به مسیر بین‌المللی

سناریو

خط لولهٔ CI با ده‌ها اجرا در روز

تیم نرم‌افزاری ده‌ها بار در روز تست و ساخت را اجرا می‌کند و هر اجرا شامل docker pull، apt-get install و npm install است. بدون آینه، هر بار همان فایل‌ها از مسیر بین‌المللی دانلود می‌شوند و زمان اجرا با کیفیت آن مسیر بالا و پایین می‌رود. با آینه، بعد از اولین اجرا بیشتر فایل‌ها از کش داخلی می‌آیند و نتیجه زودتر و با زمان قابل پیش‌بینی‌تر آماده می‌شود.

  • زمان اجرای CI قابل پیش‌بینی‌تر
  • بازخورد سریع‌تر برای برنامه‌نویس‌ها
  • خطای دانلود کمتر در ساخت ایمیج
  • پایداری حتی وقتی مسیر خارجی کند است

۵ گام تا شروع

از ساخت سرور تا اولین نصب از آینه

دو قدم اول خودکار است؛ بقیه یک خط تنظیم

  1. گام ۱: ساخت سرور

    از صفحهٔ سفارش، سرور Debian‏، Ubuntu یا Alpine بسازید.

  2. گام ۲: تنظیم خودکار منبع بسته

    بلافاصله پس از ساخت سرور، منبع apt یا apk به آینهٔ داخلی تغییر می‌کند و فایل اصلی پشتیبان‌گیری می‌شود.

  3. گام ۳: آزمون با apt یا apk

    apt update را اجرا کنید؛ نشانی‌ها باید mirror.iranclaud.ir باشند، نه مخزن خارجی.

  4. گام ۴: تنظیم Docker

    در فایل ‎/etc/docker/daemon.json گزینهٔ registry-mirrors را طبق راهنمای آینه در پنل تنظیم و Docker را دوباره راه‌اندازی کنید.

  5. گام ۵: تنظیم npm و pip (اختیاری)

    برای npm نشانی registry و برای pip مقدار index-url را روی آینه بگذارید؛ دستورها در صفحهٔ راهنمای آینه آمادهٔ کپی است.

راهنمای کامل

راهنمای کامل آینهٔ بسته‌های ایران‌کلاد

آینهٔ بسته‌ها یکی از سرویس‌های پنهان ولی پرکاربرد ایران‌کلاد است: هر بار که روی سرورتان apt install، docker pull یا npm install اجرا می‌کنید، احتمالاً از آن استفاده می‌کنید. در این راهنما توضیح می‌دهیم آینه چه می‌کند، کدام مخزن‌ها را پوشش می‌دهد، چطور تنظیم می‌شود و کجا محدودیت دارد.

۹ بخش حدود ۵ دقیقه مطالعه

فهرست مطالب

آینهٔ بسته‌ها چیست و چه مشکلی را حل می‌کند؟

هر سرور لینوکسی برای نصب و به‌روزرسانی نرم‌افزار به مخزن‌های رسمی بیرون از ایران وصل می‌شود. وقتی مسیر بین‌المللی کند یا ناپایدار است، همین کار ساده به دانلودهای نیمه‌کاره، خطای زمان انتظار و استقرارهای طولانی تبدیل می‌شود. آینهٔ بسته‌ها یک نسخهٔ داخلی از این مخزن‌ها در دیتاسنتر ایران‌کلاد است که سرورهای شما به‌جای مخزن خارجی از آن دانلود می‌کنند.

فایل‌ها همان بسته‌های رسمی و امضاشده‌اند و مدیر بسته مثل همیشه امضا را بررسی می‌کند؛ فقط مسیر دانلود عوض شده است. برای همین استفاده از آینه رفتار سیستم‌عامل یا نسخهٔ نرم‌افزار را تغییر نمی‌دهد. این سرویس برای همهٔ سرورهای ابری ایران‌کلاد رایگان است و در قیمت پلن‌ها هزینهٔ جداگانه‌ای برای آن نمی‌بینید.

کدام مخزن‌ها آینه می‌شوند؟

شانزده آینه فعال است و وضعیت هر کدام جداگانه پایش می‌شود. مهم‌ترین گروه‌ها:

  • سیستم‌عامل: Debian و Ubuntu (apt)‏، Alpine (apk)
  • مخازن apt شخص‌ثالث: Docker CE‏، NodeSource و Kubernetes
  • کانتینر: رجیستری Docker Hub
  • زبان‌های برنامه‌نویسی: npm‏، PyPI‏، Composer‏، RubyGems، ماژول‌های Go‏، crate‌های Rust‏، Maven‏، NuGet‏، Conda و CRAN
  • فایل‌های دیگر: باینری‌های Node.js و ISO نصب سیستم‌عامل

yum و dnf برای RHEL‏، Rocky و Alma هنوز آینه نمی‌شوند؛ روی این توزیع‌ها مدیر بسته مستقیم به مخزن رسمی وصل می‌شود.

بازگشت به فهرست مطالب

آینه چطور کار می‌کند؟ کش عبوری در برابر کپی کامل

بیشتر آینه‌ها از نوع کش عبوری‌اند. یعنی کل مخزن از قبل کپی نمی‌شود؛ وقتی سروری بسته‌ای را می‌خواهد که هنوز در آینه نیست، آینه آن را همان لحظه از مخزن رسمی می‌گیرد، تحویل می‌دهد و نگه می‌دارد. از آن به بعد هر سرور دیگری که همان بسته را بخواهد، آن را از شبکهٔ داخلی دریافت می‌کند.

مزیت این روش این است که آینه همیشه به‌روز است و به چرخهٔ همگام‌سازی وابسته نیست. تنها استثنا آینهٔ Composer است که فهرست بسته‌های Packagist را به‌صورت دوره‌ای بازسازی می‌کند؛ اگر نسخه‌ای همین چند ساعت پیش منتشر شده باشد، ممکن است کمی دیرتر در آینه دیده شود.

بازگشت به فهرست مطالب

تنظیم خودکار روی Debian‏، Ubuntu و Alpine

وقتی سرور Debian‏، Ubuntu یا Alpine می‌سازید، بلافاصله پس از ساخت یک اسکریپت کوتاه منبع apt یا apk را روی آینه تنظیم می‌کند. فایل منبع اصلی دور ریخته نمی‌شود و با پسوند iranclaud-original-backup کنار گذاشته می‌شود تا هر وقت خواستید برگردید. اگر این مرحله در لحظهٔ ساخت انجام نشود، یک بررسی دوره‌ای چند دقیقه بعد آن را تکمیل می‌کند.

برای اطمینان، روی سرور فایل /etc/apt/sources.list.d/iranclaud.list را ببینید و apt update را اجرا کنید؛ همهٔ خطوط دانلود باید از mirror.iranclaud.ir باشند. اگر سرور را از ایمیج آمادهٔ اپلیکیشن ساخته‌اید هم همین قاعده برقرار است، چون سیستم‌عامل زیر آن یکی از همین توزیع‌هاست.

بازگشت به فهرست مطالب

تنظیم Docker‏، npm‏، pip و ابزارهای دیگر

ابزارهای سطح برنامه خودکار تنظیم نمی‌شوند، چون ممکن است عمداً از رجیستری دیگری استفاده کنید. تنظیم هر کدام یک خط است و همهٔ دستورها در صفحهٔ راهنمای آینه در پنل آمادهٔ کپی‌اند. چند نمونهٔ رایج:

ابزارمحل تنظیممقدار
Docker/etc/docker/daemon.jsonregistry-mirrors: https://mirror.iranclaud.ir/docker/
npmnpm config set registryhttps://mirror.iranclaud.ir/npm/
pippip.conf، کلید index-urlhttps://mirror.iranclaud.ir/pypi/
Composercomposer config -g repos.packagisthttps://mirror.iranclaud.ir/composer/
Gogo env -w GOPROXYhttps://mirror.iranclaud.ir/go,direct

بازگشت به فهرست مطالب

آینه در CI و استقرار خودکار

بیشترین سود آینه در جایی است که یک کار بارها تکرار می‌شود: اجرای تست در هر commit، ساخت ایمیج Docker، یا ساختن سرورهای تازه با اسکریپت. بدون آینه، هر بار همان بسته‌ها از مسیر بین‌المللی دانلود می‌شوند و زمان کار با کیفیت آن مسیر بالا و پایین می‌رود. با آینه، از دومین اجرا به بعد بیشتر دانلودها داخلی‌اند و زمان کار قابل پیش‌بینی‌تر می‌شود.

اگر سرورها را با API ابری می‌سازید (نمونه‌ها در مستندات API)، دو قدم اول خودکار است و فقط کافی است تنظیم Docker یا npm را در اسکریپت راه‌اندازی خود بگذارید. برای ایمیج‌های خصوصی تیم، فعلاً رجیستری خودتان را روی یک سرور ابری اجرا کنید؛ رجیستری کانتینر مدیریت‌شده به‌زودی ارائه می‌شود.

بازگشت به فهرست مطالب

وضعیت و سلامت آینه‌ها

سلامت همهٔ آینه‌ها هر چند دقیقه یک بار خودکار بررسی می‌شود. در صفحهٔ راهنمای آینه در پنل، وضعیت هر آینه (فعال، کند یا قطع) و زمان آخرین بررسی را می‌بینید و همین وضعیت در صفحهٔ وضعیت سرویس‌ها هم منتشر می‌شود.

اگر آینه‌ای قطع باشد، کارتان متوقف نمی‌شود: می‌توانید منبع اصلی را از نسخهٔ پشتیبان برگردانید یا آن ابزار را موقتاً روی رجیستری رسمی بگذارید. پس از برطرف شدن مشکل، دوباره به آینه برگردید.

بازگشت به فهرست مطالب

امنیت: آیا بسته‌ها دستکاری می‌شوند؟

خیر. آینه فایل‌های مخزن رسمی را همان‌طور که هستند ذخیره و تحویل می‌دهد. apt و apk امضای فهرست بسته‌ها را با کلیدهای رسمی توزیع بررسی می‌کنند و اگر فایلی تغییر کرده باشد، نصب را رد می‌کنند؛ مدیرهای بستهٔ زبان‌ها هم مثل همیشه checksum هر بسته را کنترل می‌کنند.

آینه فقط مخزن‌های عمومی را نگه می‌دارد و هیچ بستهٔ خصوصی یا اطلاعات حساب شما در آن ذخیره نمی‌شود. اگر سازمان شما سیاست سخت‌گیرانه‌ای دربارهٔ منبع بسته‌ها دارد، می‌توانید آینه را فقط برای سیستم‌عامل نگه دارید و ابزارهای زبان را مستقیم به رجیستری رسمی وصل کنید.

بازگشت به فهرست مطالب

محدودیت‌ها

آینه برای کار روزمرهٔ سرورها ساخته شده و چند محدودیت روشن دارد:

  • yum و dnf (RHEL‏، Rocky‏، Alma) آینه نمی‌شوند
  • تنظیم خودکار فقط برای apt و apk است؛ بقیه یک خط تنظیم دستی دارند
  • آینهٔ Composer دوره‌ای به‌روز می‌شود و ممکن است تازه‌ترین نسخه را کمی دیرتر داشته باشد
  • بسته‌ها و ایمیج‌های خصوصی آینه نمی‌شوند
  • سرویس برای سرورهای ایران‌کلاد ارائه می‌شود و استفاده از بیرون پشتیبانی نمی‌شود

بازگشت به فهرست مطالب بازگشت به ابتدای راهنما

پرسش و پاسخ،  ۱۰ پرسش

سؤالات متداول دربارهٔ آینهٔ بسته‌ها

پاسخ پرسش خود را پیدا نکردید؟ با پشتیبانی در تماس باشید.

کدام مدیرهای بسته پشتیبانی می‌شوند؟
apt برای Debian و Ubuntu‏، apk برای Alpine، رجیستری Docker‏، npm‏، PyPI‏، Composer‏، RubyGems، ماژول‌های Go‏، crate‌های Rust‏، Maven‏، CRAN‏، Conda‏، NuGet، باینری‌های Node.js، سه مخزن apt شخص‌ثالث (Docker CE‏، NodeSource و Kubernetes) و فایل‌های ISO نصب. yum و dnf برای RHEL‏، Rocky و Alma هنوز آینه نمی‌شوند.
تنظیم خودکار از روز اول است یا باید دستی تنظیم کنم؟
روی سرورهای Debian‏، Ubuntu و Alpine بلافاصله پس از ساخت سرور، منبع apt یا apk به آینه تغییر می‌کند و نسخهٔ پشتیبان فایل اصلی هم نگه داشته می‌شود؛ اگر این مرحله در لحظهٔ ساخت انجام نشود، یک بررسی خودکار چند دقیقه بعد آن را تکمیل می‌کند. برای Docker‏، npm‏، pip و بقیه، یک خط تنظیم لازم است که در صفحهٔ راهنمای آینه در پنل آمادهٔ کپی است.
سرعت دانلود چقدر است؟
عدد ثابتی اعلام نمی‌کنیم، چون سرعت به اندازهٔ بسته و اینکه قبلاً در کش آینه نشسته باشد بستگی دارد. نکتهٔ اصلی این است که بسته‌ای که یک بار دریافت شده، از شبکهٔ داخلی همان دیتاسنتر تحویل داده می‌شود و دیگر به کیفیت مسیر بین‌المللی وابسته نیست.
آینه چقدر به‌روز است؟ بستهٔ تازه فوراً در دسترس است؟
بیشتر آینه‌ها از نوع کش عبوری‌اند، نه کپی زمان‌بندی‌شده: وقتی بسته یا نسخهٔ تازه‌ای درخواست می‌شود که هنوز در کش نیست، همان لحظه از مخزن رسمی گرفته و ذخیره می‌شود. تنها استثنا آینهٔ Composer است که به‌صورت دوره‌ای از Packagist به‌روز می‌شود؛ نسخه‌ای که چند ساعت پیش منتشر شده ممکن است هنوز در آن نباشد.
اگر آینه بسته‌ای را نداشته باشد چه می‌شود؟
در آینه‌های کش عبوری، اولین درخواست برای بسته‌ای که هنوز در کش نیست به‌صورت خودکار از مخزن رسمی دریافت می‌شود (مثل حالت بدون آینه) و نتیجه ذخیره می‌شود؛ درخواست‌های بعدی شما یا سرورهای دیگر از کش پاسخ می‌گیرند. اگر آینه‌ای موقتاً در دسترس نباشد، می‌توانید منبع اصلی را از نسخهٔ پشتیبانی که روی سرور مانده برگردانید.
از بسته‌های خصوصی هم پشتیبانی می‌کند؟
خیر. آینه فقط مخزن‌های عمومی رسمی را نگه می‌دارد؛ مثل Debian‏، Ubuntu‏، Alpine‏، Docker Hub و رجیستری‌های npm‏، PyPI‏، Composer و RubyGems. برای بسته‌ها و ایمیج‌های خصوصی، رجیستری خودتان را روی یک سرور جداگانه راه بیندازید.
از سروری خارج از ایران‌کلاد می‌توانم استفاده کنم؟
آینه برای سرورهای ایران‌کلاد ارائه می‌شود و تنظیم خودکار و راهنمای پنل فقط برای همین سرورهاست. برای استفاده از سرورهای جای دیگر پشتیبانی یا تضمینی ارائه نمی‌کنیم.
وضعیت آینه را کجا ببینم؟
در صفحهٔ راهنمای آینه در پنل، وضعیت لحظه‌ای هر آینه (فعال، کند یا قطع) و زمان آخرین بررسی سلامت نمایش داده می‌شود. وضعیت آینه‌ها در صفحهٔ عمومی وضعیت سرویس‌ها هم آمده است و سلامت آن‌ها هر چند دقیقه یک بار خودکار بررسی می‌شود.
هزینه چقدر است؟
استفاده از آینه برای همهٔ سرورهای ایران‌کلاد رایگان است و هزینهٔ جداگانه‌ای از کیف پول کسر نمی‌شود.
چطور به منبع اصلی apt برگردم؟
اسکریپت تنظیم، فایل منبع اصلی را با پسوند iranclaud-original-backup کنار می‌گذارد. کافی است فایل iranclaud.list را از پوشهٔ sources.list.d حذف کنید و نسخهٔ پشتیبان را برگردانید؛ بعد apt update را اجرا کنید.

پاسخ پرسش خود را پیدا نکردید؟ با پشتیبانی در تماس باشید.

سرور بسازید و apt update را از آینهٔ داخلی امتحان کنید

روی Debian‏، Ubuntu و Alpine بدون تنظیم دستی؛ از همان لحظهٔ ساخت سرور.