npm proxy: Cấu hình proxy cho npm, yarn, pnpm và sửa lỗi
npm proxy là cấu hình để trình quản lý gói npm gửi yêu cầu tới registry qua một máy chủ proxy, dùng khi máy tính hoặc máy chủ build không được kết nối thẳng ra Internet. Thiếu cấu hình này, lệnh npm install treo rồi báo lỗi mạng dù trình duyệt trên cùng máy vẫn vào web bình thường. Bài này ProxyVN hướng dẫn cấu hình cho npm, yarn, pnpm và cách xử lý từng mã lỗi.
npm proxy và lý do trình duyệt chạy mà npm lỗi
Tình huống quen thuộc: vừa vào công ty mới, mở trình duyệt đọc tài liệu bình thường, gõ npm install thì đứng im vài phút rồi báo lỗi. Nguyên nhân nằm ở cách các chương trình lấy thông tin proxy.
npm không tự đọc proxy của hệ điều hành
Trình duyệt đọc cài đặt proxy của Windows hoặc macOS, kể cả tệp cấu hình tự động mà bộ phận IT phát. npm là chương trình chạy trên Node.js, nó không đọc các cài đặt đó. npm chỉ biết tới proxy khi được khai báo trong cấu hình của chính nó hoặc qua biến môi trường.
npm cần kết nối tới đâu
Mặc định npm tải thông tin gói và tệp nén của gói từ registry công khai tại registry.npmjs.org qua HTTPS. Một lần cài đặt dự án cỡ vừa gửi hàng trăm tới hàng nghìn yêu cầu. Mọi yêu cầu đó phải đi qua proxy nếu mạng yêu cầu.
Các tình huống cần cấu hình
- Mạng công ty buộc mọi kết nối ra ngoài đi qua proxy.
- Máy chủ build trong vùng mạng kín, chỉ một máy cổng được ra Internet.
- Đường truyền trực tiếp tới registry chậm hoặc đứt quãng.
- Container chạy trong hạ tầng có chính sách mạng riêng.
Phân biệt với hai thứ trùng tên
Kết quả tìm kiếm cho cụm từ này lẫn hai thứ khác. Nginx Proxy Manager, hay viết tắt là NPM, là công cụ quản lý proxy ngược có giao diện web, không liên quan tới trình quản lý gói. Còn các gói như http-proxy hay http-proxy-middleware trên registry là thư viện để viết proxy bằng Node.js. Bài này chỉ nói về việc cho lệnh npm đi qua proxy.
npm chỉ dùng proxy mà anh em khai báo cho nó. Proxy của hệ điều hành và của trình duyệt không tự áp dụng.
Cấu hình npm proxy bằng lệnh npm config
Cách trực tiếp nhất là dùng lệnh cấu hình có sẵn của npm.

Hai thiết lập proxy và https-proxy
Hai thiết lập chính
npm config set proxy http://103.1.2.3:8080
npm config set https-proxy http://103.1.2.3:8080
Theo tài liệu cấu hình của npm, thiết lập proxy dùng cho các yêu cầu HTTP đi ra, còn https-proxy dùng cho các yêu cầu HTTPS đi ra. Nếu không đặt, npm lấy giá trị từ biến môi trường HTTP_PROXY và HTTPS_PROXY.
Registry mặc định dùng HTTPS, nên thiết lập https-proxy mới là thứ quyết định. Nhiều người chỉ đặt proxy rồi thắc mắc vì sao vẫn lỗi. Thói quen tốt là đặt cả hai cùng một giá trị.
Chú ý tiền tố của địa chỉ proxy
Giá trị của https-proxy vẫn thường bắt đầu bằng http://. Tên thiết lập nói về loại yêu cầu đi ra, còn tiền tố của giá trị nói về cách kết nối tới proxy. Phần lớn proxy nhận kết nối bằng HTTP thường rồi mở đường hầm cho lưu lượng HTTPS bên trong. Viết https:// cho một proxy chỉ nói HTTP sẽ gây lỗi bắt tay.
Proxy có tên đăng nhập và mật khẩu
npm config set https-proxy http://ana:pw123@103.1.2.3:8080
Ký tự đặc biệt trong mật khẩu phải được mã hoá theo kiểu URL: @ thành %40, dấu hai chấm thành %3A, dấu thăng thành %23. Các định dạng địa chỉ proxy và cách chuyển đổi có trong bài định dạng proxy của ProxyVN.
Xem và gỡ
npm config get https-proxy
npm config list
npm config delete proxy
npm config delete https-proxy
Lệnh npm config list in toàn bộ cấu hình đang có hiệu lực kèm tệp chứa từng giá trị, và tự che mật khẩu trong địa chỉ. Đây là lệnh nên chạy đầu tiên khi gỡ lỗi.
Mức người dùng và mức toàn cục
Lệnh npm config set mặc định ghi vào tệp cấu hình của người dùng hiện tại. Thêm cờ --global để ghi vào tệp toàn cục của bản cài Node.js. Thêm cờ --location=project để ghi vào tệp của dự án đang đứng.
Tóm lại, đặt cả proxy và https-proxy, dùng tiền tố http:// cho giá trị, và kiểm tra bằng npm config list.
Tệp .npmrc và thứ tự ưu tiên của npm proxy
Lệnh npm config thực chất chỉ sửa các tệp .npmrc. Hiểu các tệp này giúp anh em kiểm soát cấu hình cho từng dự án và từng máy.

Bốn tệp .npmrc và thứ tự ưu tiên
Bốn tệp cấu hình
Theo tài liệu về npmrc, npm đọc cấu hình từ bốn tệp:
- Tệp của dự án: .npmrc nằm ở thư mục gốc dự án, cạnh package.json.
- Tệp của người dùng: .npmrc trong thư mục cá nhân.
- Tệp toàn cục: npmrc trong thư mục etc của bản cài Node.js.
- Tệp mặc định đi kèm npm.
Tệp ở trên ghi đè tệp ở dưới. Tham số dòng lệnh và biến môi trường còn đứng trên cả bốn tệp.
Nội dung tệp
proxy=http://103.1.2.3:8080
https-proxy=http://103.1.2.3:8080
noproxy=localhost,127.0.0.1,.congty.local
registry=https://registry.npmjs.org/
Mỗi dòng là một cặp khoá và giá trị. Dòng bắt đầu bằng dấu chấm phẩy hoặc dấu thăng là ghi chú.
Không đưa mật khẩu proxy vào kho mã
Tệp .npmrc của dự án thường được đưa vào Git để cả nhóm dùng chung registry. Ghi địa chỉ proxy kèm mật khẩu vào tệp này là để lộ mật khẩu cho mọi người có quyền đọc kho. Cách làm đúng là dùng biến môi trường trong tệp.
https-proxy=${HTTPS_PROXY}
npm thay cú pháp ${TÊN_BIẾN} bằng giá trị biến môi trường khi đọc tệp. Mỗi máy đặt biến riêng, tệp trong kho không chứa bí mật.
Biến môi trường dạng npm_config
Mọi thiết lập của npm đều đặt được bằng biến môi trường có tiền tố npm_config_, với dấu gạch ngang đổi thành gạch dưới. Ví dụ npm_config_https_proxy. Cách này tiện cho hệ thống CI, nơi cấu hình được tiêm vào từ bên ngoài.
Bảng thứ tự ưu tiên
Thứ tự |
Nguồn |
Ví dụ |
|---|---|---|
1 |
Tham số dòng lệnh |
npm install --https-proxy=... |
2 |
Biến môi trường npm_config_ |
npm_config_https_proxy |
3 |
.npmrc của dự án |
Thư mục gốc dự án |
4 |
.npmrc của người dùng |
Thư mục cá nhân |
5 |
npmrc toàn cục |
Thư mục cài Node.js |
6 |
Biến HTTPS_PROXY, HTTP_PROXY |
Dùng khi các mức trên không đặt |
Khi proxy "không chịu đổi" dù đã sửa, gần như luôn có một nguồn ở mức cao hơn đang ghi đè.
Thiết lập noproxy và registry nội bộ
Nhiều công ty có registry riêng nằm trong mạng nội bộ để lưu gói nội bộ và lưu đệm gói công khai. Kết nối tới registry đó không được đi qua proxy ra ngoài.
Thiết lập noproxy
Thiết lập noproxy nhận danh sách tên miền ngăn bởi dấu phẩy. Yêu cầu tới các tên miền này đi thẳng. npm cũng đọc biến môi trường NO_PROXY nếu thiết lập không được đặt. Quy tắc viết danh sách, cách khớp tên miền con, có trong bài no_proxy là gì.
Registry theo phạm vi gói
npm cho phép mỗi phạm vi gói trỏ tới một registry riêng. Gói nội bộ có tiền tố @congty lấy từ registry nội bộ, gói còn lại lấy từ registry công khai qua proxy.
@congty:registry=https://npm.congty.local/
noproxy=npm.congty.local
Registry nội bộ làm bộ đệm
Nếu công ty đã có registry nội bộ lưu đệm toàn bộ gói công khai, cách gọn nhất là trỏ thiết lập registry về đó và không đặt proxy. Mọi yêu cầu đi trong mạng nội bộ, nhanh hơn và không phụ thuộc đường ra Internet.
Lỗi do thiếu noproxy
Triệu chứng điển hình: gói công khai cài được, gói nội bộ báo lỗi 403 hoặc không tìm thấy máy chủ. Proxy nhận yêu cầu tới tên miền nội bộ, không phân giải được hoặc từ chối chuyển tiếp. Thêm tên miền vào noproxy là hết.
npm proxy bằng biến môi trường
Biến môi trường là cách cấu hình mà nhiều công cụ cùng hiểu, nên được ưa dùng trên máy chủ và trong container.
Các biến npm đọc
npm đọc HTTP_PROXY, HTTPS_PROXY, NO_PROXY cùng dạng chữ thường của chúng. Giá trị trong .npmrc được ưu tiên hơn nếu cả hai cùng có.
Đặt biến
export HTTPS_PROXY=http://ana:pw123@103.1.2.3:8080
set HTTPS_PROXY=http://ana:pw123@103.1.2.3:8080
$env:HTTPS_PROXY = "http://ana:pw123@103.1.2.3:8080"
Dòng đầu cho Linux và macOS, dòng hai cho Command Prompt, dòng ba cho PowerShell.
Trong Dockerfile
Truyền proxy bằng tham số build thay vì ghi cứng, để địa chỉ và mật khẩu không nằm lại trong ảnh.
ARG HTTPS_PROXY
RUN npm ci
Khi build, thêm tham số --build-arg HTTPS_PROXY với giá trị tương ứng. Docker coi HTTP_PROXY, HTTPS_PROXY, NO_PROXY là tham số build định sẵn và không lưu chúng vào lịch sử ảnh. Cấu hình proxy cho chính Docker có trong bài proxy Docker.
Lợi ích phụ: script cài đặt cũng đọc biến môi trường
Đây là điểm ít người để ý và sẽ được nói kỹ ở phần sau. Nhiều gói tải thêm tệp nhị phân khi cài, và chúng đọc biến môi trường chứ không đọc .npmrc.
npm proxy cho yarn và pnpm
Hai trình quản lý gói phổ biến còn lại có cách cấu hình riêng. Dự án dùng công cụ nào thì cấu hình cho công cụ đó.

npm, yarn và pnpm
Yarn bản 1
Yarn bản 1, còn gọi là Yarn Classic, dùng lệnh giống npm.
yarn config set proxy http://103.1.2.3:8080
yarn config set https-proxy http://103.1.2.3:8080
Cấu hình được ghi vào tệp .yarnrc trong thư mục cá nhân. Yarn bản 1 cũng đọc một phần cấu hình từ .npmrc.
Yarn bản 2 trở lên
Yarn hiện đại dùng tệp .yarnrc.yml với tên thiết lập khác. Theo tài liệu cấu hình yarnrc, hai thiết lập là httpProxy và httpsProxy.
httpProxy: "http://103.1.2.3:8080"
httpsProxy: "http://103.1.2.3:8080"
Có thể đặt bằng lệnh yarn config set httpsProxy kèm giá trị. Yarn hiện đại không đọc .npmrc, nên cấu hình npm không tự chuyển sang. Đây là lý do phổ biến khiến dự án nâng cấp Yarn xong thì mất kết nối trong mạng công ty.
pnpm
pnpm đọc tệp .npmrc theo cùng định dạng. Tài liệu thiết lập của pnpm liệt kê các khoá https-proxy, proxy và noproxy với ý nghĩa tương tự npm. Máy đã cấu hình npm bằng .npmrc ở thư mục cá nhân thì pnpm dùng được luôn.
Bảng đối chiếu
Công cụ |
Tệp cấu hình |
Khoá cho HTTPS |
Đọc .npmrc |
|---|---|---|---|
npm |
.npmrc |
https-proxy |
Có |
Yarn 1 |
.yarnrc |
https-proxy |
Một phần |
Yarn 2 trở lên |
.yarnrc.yml |
httpsProxy |
Không |
pnpm |
.npmrc |
https-proxy |
Có |
Cách chung cho cả ba
Cả ba công cụ đều đọc biến môi trường HTTPS_PROXY. Trên máy dùng lẫn nhiều công cụ, đặt biến môi trường là cách ít phải nhớ nhất.
npm proxy và các gói tải tệp nhị phân khi cài
Một nguồn lỗi gây bối rối: npm install chạy gần xong thì dừng ở một gói cụ thể, dù proxy đã đặt đúng và các gói khác cài bình thường.
Vì sao xảy ra
Một số gói không chứa sẵn mọi thứ. Khi cài, script của gói tải thêm tệp lớn từ máy chủ riêng: trình duyệt cho công cụ tự động hoá, tệp nhị phân đã biên dịch cho thư viện xử lý ảnh, bộ khung ứng dụng desktop. Script này là một chương trình Node.js độc lập. Nó không biết tới cấu hình proxy trong .npmrc trừ khi tác giả gói chủ động đọc.
Cách xử lý chung
Đặt biến môi trường HTTPS_PROXY và HTTP_PROXY. Phần lớn script tải tệp đều đọc hai biến này. npm cũng tự đưa cấu hình của nó vào môi trường của script dưới dạng biến npm_config_https_proxy, và nhiều gói đọc cả biến đó.
Một số nhóm gói hay gặp
- Công cụ điều khiển trình duyệt tải bản trình duyệt riêng khi cài. Cấu hình proxy lúc chạy có trong bài cách sử dụng proxy trong Puppeteer và bài proxy Playwright.
- Gói có phần viết bằng C++ cần tải tệp tiêu đề của Node.js để biên dịch.
- Gói tải tệp nhị phân dựng sẵn từ trang phát hành của dự án.
Tên miền cần được proxy cho phép
Proxy công ty có thể chỉ cho phép registry.npmjs.org. Các tệp nhị phân lại nằm ở tên miền khác: máy chủ phát hành của kho mã, mạng phân phối nội dung của từng dự án. Khi thấy lỗi 403 hoặc bị từ chối ở một gói cụ thể, hãy xem địa chỉ trong thông báo lỗi và đề nghị bộ phận IT cho phép tên miền đó.
Bỏ qua bước tải khi không cần
Nhiều gói có biến môi trường để bỏ qua bước tải, dùng khi tệp đã có sẵn hoặc không cần trên máy chủ build. Tên biến ghi trong tài liệu của từng gói.
Tóm lại, cấu hình .npmrc lo phần tải gói từ registry, biến môi trường lo phần script cài đặt. Trong mạng có proxy, nên đặt cả hai.
Lỗi thường gặp khi dùng npm proxy
npm báo lỗi bằng mã ngắn. Biết ý nghĩa từng mã là biết ngay hướng xử lý.

Lỗi thường gặp khi cài gói qua proxy
Mã lỗi |
Ý nghĩa |
Hướng xử lý |
|---|---|---|
ETIMEDOUT |
Hết thời gian chờ kết nối |
Chưa đặt proxy, sai địa chỉ hoặc proxy không phản hồi |
ECONNREFUSED |
Máy đích từ chối |
Sai cổng proxy, proxy chưa chạy |
ECONNRESET |
Kết nối bị cắt giữa chừng |
Proxy hoặc tường lửa ngắt, thử lại, kiểm tra proxy |
ENOTFOUND |
Không phân giải được tên |
Sai tên proxy, DNS nội bộ không biết registry |
E407 |
Proxy yêu cầu xác thực |
Sai user, password, ký tự đặc biệt chưa mã hoá |
SELF_SIGNED_CERT_IN_CHAIN |
Chứng chỉ không tin cậy |
Proxy công ty giải mã HTTPS, cần thêm chứng chỉ gốc |
UNABLE_TO_GET_ISSUER_CERT_LOCALLY |
Thiếu chứng chỉ trung gian |
Như trên |
E403 |
Bị từ chối |
Proxy chặn tên miền, hoặc thiếu noproxy cho registry nội bộ |
Trang các lỗi thường gặp của npm liệt kê thêm nhiều trường hợp và cách xử lý chính thức.
Lỗi xác thực 407
Kiểm tra theo thứ tự: tên đăng nhập và mật khẩu, ký tự đặc biệt đã mã hoá chưa, gói proxy còn hạn không, địa chỉ IP của máy có trong danh sách được phép không. Chi tiết về mã lỗi này có trong bài sửa lỗi 407 proxy authentication required.
Lỗi chứng chỉ
Proxy công ty kiểm tra nội dung HTTPS sẽ thay chứng chỉ của registry bằng chứng chỉ do công ty ký. Node.js không tin chứng chỉ đó. Cách đúng là xin tệp chứng chỉ gốc của công ty rồi khai báo.
npm config set cafile /duong/dan/toi/congty-ca.pem
Với script cài đặt và các công cụ Node.js khác, đặt thêm biến môi trường NODE_EXTRA_CA_CERTS trỏ tới cùng tệp. Không nên dùng strict-ssl=false. Thiết lập đó tắt kiểm tra chứng chỉ cho mọi gói, nghĩa là ai đứng giữa đường truyền cũng có thể thay nội dung gói mà npm không phát hiện.
Lỗi kết nối chập chờn
Proxy quá tải hoặc giới hạn số kết nối đồng thời gây ECONNRESET rải rác. npm mở nhiều kết nối song song khi cài. Giảm số kết nối đồng thời bằng thiết lập maxsockets và tăng số lần thử lại bằng fetch-retries thường giúp cài xong. Nếu proxy tính theo luồng, xem bài 1 proxy chạy được bao nhiêu luồng.
Xem nhật ký chi tiết
npm install --loglevel verbose
Nhật ký in từng yêu cầu và mã phản hồi. Tìm dòng lỗi đầu tiên, không phải dòng cuối, vì lỗi sau thường là hệ quả của lỗi trước. npm cũng lưu nhật ký đầy đủ của lần chạy lỗi trong thư mục _logs của thư mục bộ đệm.
Tách lỗi proxy khỏi lỗi npm
Thử cùng proxy bằng cURL tới registry.
curl -x http://ana:pw123@103.1.2.3:8080 -I https://registry.npmjs.org/
Nhận mã 200 nghĩa là proxy tốt, vấn đề ở cấu hình npm. Không nhận được nghĩa là vấn đề ở proxy hoặc mạng.
Quy trình thiết lập npm proxy cho cả nhóm
Cấu hình trên máy mình là một chuyện. Để cả nhóm và hệ thống build cùng chạy ổn là chuyện khác.
Trên máy lập trình viên
Mỗi người đặt https-proxy và proxy trong .npmrc ở thư mục cá nhân, hoặc đặt biến môi trường trong tệp cấu hình của shell. Mật khẩu proxy là của từng người, không chia sẻ qua kho mã.
Trong kho mã
Tệp .npmrc của dự án chỉ chứa thứ chung: registry, phạm vi gói, và nếu cần thì dòng tham chiếu biến môi trường. Thêm một mục ngắn trong tài liệu dự án hướng dẫn người mới đặt proxy.
Trên hệ thống CI
Khai báo HTTPS_PROXY, HTTP_PROXY, NO_PROXY là biến bí mật của hệ thống. Dùng npm ci thay cho npm install để cài đúng phiên bản trong tệp khoá. Bật lưu đệm thư mục bộ đệm của npm giữa các lần chạy để giảm số yêu cầu qua proxy.
Giảm phụ thuộc vào đường ra Internet
- Dựng registry nội bộ làm bộ đệm cho gói công khai.
- Dùng tính năng cài đặt ngoại tuyến của trình quản lý gói khi có sẵn bộ đệm.
- Giữ tệp khoá trong kho mã để mọi máy tải đúng một bộ gói.
Kiểm tra sau khi thiết lập
Chạy npm ping để thử kết nối tới registry, rồi npm view với tên một gói bất kỳ để thử tải thông tin gói. Hai lệnh này nhẹ, cho kết quả trong vài giây.
Chọn proxy phù hợp cho npm và máy build
Với việc tải gói, loại địa chỉ IP không quan trọng. Thứ cần là tốc độ, băng thông và độ ổn định.
Tiêu chí
- Hỗ trợ proxy HTTP có phương thức CONNECT tới cổng 443.
- Băng thông lớn. Thư mục node_modules của một dự án thường nặng hàng trăm megabyte.
- Chịu được nhiều kết nối đồng thời, vì npm tải song song.
- Địa chỉ cố định nếu registry riêng của đối tác chỉ cho truy cập từ địa chỉ đã khai báo.
Loại proxy gợi ý
Proxy datacenter đáp ứng tốt các tiêu chí trên với chi phí hợp lý, xem bài proxy datacenter Việt Nam. Proxy xoay không hợp, vì địa chỉ đổi giữa một lần cài hàng nghìn yêu cầu dễ gây lỗi rải rác.
Tránh proxy miễn phí cho chuỗi cung ứng phần mềm
Gói cài về sẽ chạy trên máy của anh em và trong sản phẩm. Đường tải gói cần đáng tin. Lý do không dùng proxy không rõ nguồn gốc có trong bài proxy miễn phí có an toàn không.
ProxyVN cung cấp proxy datacenter Việt Nam và US, proxy dân cư tĩnh Viettel, VNPT, FPT, hỗ trợ HTTP và SOCKS5 với user/password. Anh em cần đường ra ổn định cho máy build có thể mua proxy tại ProxyVN và khai báo vào .npmrc trong một phút.
Câu hỏi thường gặp về npm proxy
Phần này trả lời nhanh các thắc mắc phổ biến.
Lệnh nào xem npm proxy đang đặt
Chạy npm config get proxy và npm config get https-proxy, hoặc npm config list để xem toàn bộ kèm nguồn.
Lệnh nào gỡ npm proxy
Chạy npm config delete proxy và npm config delete https-proxy. Nếu giá trị nằm ở mức toàn cục, thêm cờ --global. Kiểm tra cả biến môi trường.
npm có dùng được proxy SOCKS5 không
Các bản npm gần đây nhận địa chỉ bắt đầu bằng socks5:// trong thiết lập proxy. Hỗ trợ này phụ thuộc phiên bản, nên thử trên máy của mình trước khi dựa vào. Proxy HTTP vẫn là lựa chọn ít rủi ro nhất.
npx có dùng cấu hình proxy của npm không
Có. npx là một phần của npm và đọc cùng cấu hình.
Vì sao đặt proxy rồi mà gói cài rất chậm
Có thể do proxy xa hoặc quá tải, hoặc do mỗi yêu cầu phải xác thực lại. Thử proxy gần hơn, và bật lưu đệm để các lần cài sau ít phải tải.
Có nên đặt registry về địa chỉ http:// để tránh lỗi SSL
Không. Tải gói qua HTTP thường không được mã hoá và không được kiểm tra, ai trên đường truyền cũng thay được nội dung. Sửa đúng nguyên nhân bằng cách khai báo chứng chỉ gốc.
Đặt proxy trong .npmrc có ảnh hưởng tới lệnh npm publish không
Có. Lệnh phát hành gói cũng gửi yêu cầu tới registry nên đi qua cùng proxy. Nếu phát hành lên registry nội bộ, nhớ thêm tên miền đó vào noproxy để tệp gói không bị đẩy vòng ra ngoài rồi quay lại.
Xoá bộ đệm có giúp sửa lỗi proxy không
Thường là không. Bộ đệm chỉ chứa gói đã tải. Lỗi proxy nằm ở đường mạng, xoá bộ đệm chỉ khiến lần cài sau phải tải nhiều hơn qua đúng đường đang lỗi.
nvm có cần proxy riêng không
Công cụ quản lý phiên bản Node.js tải bản cài từ máy chủ của Node.js, độc lập với npm. Bản cho Linux và macOS đọc biến môi trường. Bản cho Windows có lệnh đặt proxy riêng.
Kết luận
npm proxy gồm hai thiết lập proxy và https-proxy trong .npmrc, kèm noproxy cho registry nội bộ và biến môi trường cho script cài đặt. Yarn hiện đại dùng httpsProxy trong .yarnrc.yml, pnpm đọc chung .npmrc. Khi lỗi, đọc mã lỗi, xem npm config list và thử proxy bằng cURL. Cần proxy băng thông lớn cho hệ thống build, liên hệ Proxy.vn - Nhà cung cấp dịch vụ proxy chất lượng hàng đầu Việt Nam để chọn gói phù hợp cho npm proxy của nhóm.