نصب پکیجهای npm روی سرور ایران؛ روان، پایدار و با همان دستورها
وقتی ارتباط مستقیم با رجیستری اصلی محدود یا ناپایدار است، نصب وابستگیها نباید متوقف شود. نشانی عمومی FluxCDN را یکبار برای npm تنظیم کنید و پکیجهای عمومی را در پروژه، سرور، CI/CD و داکر با همان npm install و npm ci همیشگی بگیرید.
npm install
رجیستری عمومی HTTPS
بدون حساب کاربری
سازگار با npm install و npm ci
پشتیبانی از پکیج scoped عمومی
پکیج عمومی npm را از یک مسیر مطمئن بگیرید
نام پکیج، نسخه و دستور نصب همان چیزی میماند که پروژه شما میشناسد. FluxCDN داده و فایل پکیجهای عمومی را از رجیستری رسمی npm دریافت میکند.
- دریافت از رجیستری رسمی npmفراداده و فایلهای پکیج عمومی از منبع رسمی npm تأمین میشوند.
- دسترسی به پکیجهای عمومی و scopedپکیجهای معمولی و scoped عمومی با همان نام و نسخه در دسترساند.
- مسیر عمومی فقط برای دریافتانتشار پکیج روی این نشانی غیرفعال است و سرویس برای نصب پکیجهای عمومی ارائه میشود.
رجیستری npm را به اندازه نیازتان فعال کنید
برای یک پروژه، کل حساب کاربری یا فقط یک دستور تنظیم جداگانه دارید. روش مناسب را انتخاب کنید و کد آماده را بردارید.
تنظیم رجیستری برای یک پروژه
این خط را در فایل .npmrc ریشه پروژه قرار دهید؛ تنظیم سراسری npm دستنخورده میماند.
registry=https://npm.fluxcdn.cloud/
تنظیم رجیستری برای حساب کاربری
پس از اجرا، دستورهای npm در همه پروژههای همین کاربر از FluxCDN استفاده میکنند.
npm config set registry https://npm.fluxcdn.cloud/
استفاده فقط برای یک نصب
برای امتحان سرویس یا یک نصب موقت، نشانی رجیستری را فقط به همان دستور اضافه کنید.
npm install lodash --registry=https://npm.fluxcdn.cloud/
رجیستری فعال را بررسی کنیدخروجی باید https://npm.fluxcdn.cloud/ باشد.
npm config get registry
بعد از تنظیم، npm را مثل همیشه استفاده کنید
لازم نیست package.json، نام پکیجها یا دستورهای نصب را عوض کنید. npm نشانی رجیستری را از تنظیم فعال میخواند.
- نصب وابستگیهای پروژهnpm install پکیجهای ثبتشده در package.json را دریافت میکند.
- پکیجهای scoped عمومیپکیجهایی مانند @types/node با همان نام معمول نصب میشوند.
- نصب تمیز بر اساس قفل نسخهnpm ci برای سرور و فرایند استقرار بدون تغییر باقی میماند.
npm install
npm install express
npm install @types/node
npm ci
node_modules/رجیستری npm را وارد فرایند استقرار کنید
برای CI/CD، ساخت ایمیج داکر یا ابزارهای بررسی پکیج، نمونه مناسب را انتخاب کنید. هر نمونه مستقل و آماده کپی است.
نصب وابستگیها در CI/CD
رجیستری را پیش از npm ci تنظیم کنید تا فایل package-lock.json همان نسخههای قفلشده را نصب کند.
npm config set registry https://npm.fluxcdn.cloud/
npm ci
استفاده در ساخت ایمیج داکر
نشانی رجیستری را فقط برای مرحله نصب وابستگیها مشخص کنید.
FROM node:24
WORKDIR /app
COPY package*.json ./
RUN npm ci --registry=https://npm.fluxcdn.cloud/
COPY . .
CMD ["npm", "start"]
مشاهده نسخه یا دریافت tarball
برای بررسی فراداده یا دریافت فایل یک پکیج هم میتوانید رجیستری را همانجا مشخص کنید.
npm view lodash version --registry=https://npm.fluxcdn.cloud/
npm pack is-number@7.0.0 --registry=https://npm.fluxcdn.cloud/
مرز دسترسی روشن است
این نشانی برای دریافت پکیجهای عمومی npm است. برای نصب نیازی به حساب FluxCDN ندارید و انتشار پکیج روی رجیستری عمومی غیرفعال است.
بازگشت به رجیستری رسمی npmهر زمان خواستید، تنظیم حساب کاربری را با این دستور برگردانید.
npm config set registry https://registry.npmjs.org/اگر نصب انجام نشد، از این سه بررسی شروع کنید
ابتدا نشانی فعال را ببینید، سپس اتصال رجیستری و دسترسی به فراداده یک پکیج عمومی را بررسی کنید.
نشانی رجیستری فعال را ببینیدnpm config get registry
پاسخ رجیستری را با PONG تأیید کنیدnpm ping --registry=https://npm.fluxcdn.cloud/
دسترسی به فراداده پکیج را بررسی کنیدnpm view lodash version --registry=https://npm.fluxcdn.cloud/
پرسشهای متداول رجیستری npm
پاسخهای کوتاه برای انتخاب روش تنظیم، استفاده روزمره و بازگرداندن رجیستری.
برای دریافت پکیجها به حساب FluxCDN نیاز دارم؟
خیر. دریافت پکیجهای عمومی از npm.fluxcdn.cloud بدون حساب کاربری یا ورود انجام میشود.
آیا پکیجهای scoped هم پشتیبانی میشوند؟
بله. پکیجهای scoped عمومی مانند @types/node را میتوانید با همان دستور معمول npm install دریافت کنید.
چطور رجیستری فعال npm را ببینم؟
دستور npm config get registry را اجرا کنید. هنگام استفاده از FluxCDN باید نشانی https://npm.fluxcdn.cloud/ نمایش داده شود.
چطور تنظیم را فقط به یک پروژه محدود کنم؟
در ریشه همان پروژه یک فایل .npmrc بسازید و خط registry=https://npm.fluxcdn.cloud/ را داخل آن قرار دهید.
آیا میتوانم پکیج خودم را در این رجیستری منتشر کنم؟
خیر. رجیستری عمومی FluxCDN برای دریافت پکیج عمومی است و انتشار پکیج روی آن غیرفعال شده است.
چطور به رجیستری رسمی npm برگردم؟
دستور npm config set registry https://registry.npmjs.org/ را اجرا کنید و سپس با npm config get registry نتیجه را بررسی کنید.
رجیستری npm را برای پروژه بعدی فعال کنید
محدوده تنظیم را انتخاب کنید، کد آماده را کپی کنید و نصب وابستگیها را با دستورهای همیشگی ادامه دهید.