npm i yarn za proxy
Sieci korporacyjne łamią npm install w przewidywalny sposób. Oto jak skonfigurować npm i obie główne wersje yarn, aby instalować przez proxy HTTP — plus zmienne środowiskowe, które dzieli cały zestaw narzędzi Node.
npm, yarn i proxy HTTP
Menadżery pakietów pobierają przez HTTPS, więc potrzebują proxy HTTP CONNECT — co jest dokładnie punktem końcowym s4m HTTP na porcie 3128. npm przechowuje swoją własną konfigurację, więc ustawienie zmiennych środowiskowych powłoki nie zawsze wystarcza; zazwyczaj ustawia się zarówno proxy, jak i https-proxy w konfiguracji npm, aby ruch rejestru był kierowany. Dwie generacje Yarn różnią się: klasyczny yarn v1 odczytuje swoje własne ustawienia proxy / https-proxy (i w dużej mierze szanuje ustawienia npm), podczas gdy Yarn Berry (v2+) używa kluczy httpProxy i httpsProxy w .yarnrc.yml.
We wszystkich z nich standardowe zmienne środowiskowe http_proxy, https_proxy i no_proxy są również honorowane, co jest najszybszym sposobem na naprawienie jednorazowego npm install na zablokowanej maszynie. Z s4m uwierzytelniasz się za pomocą USER:PASS przeciwko proxy.s4m.online:3128. Zobacz stronę proxy i wspólny przewodnik po zmiennych środowiskowych; siostrzany przewodnik pip i conda obejmuje odpowiednik w Pythonie.
Skonfiguruj npm, yarn v1 i Berry
Trwała konfiguracja dla każdego narzędzia plus zapasowa zmienna środowiskowa. Zastąp USER:PASS przed uruchomieniem.
# --- npm: persistent config (writes to ~/.npmrc) --- npm config set proxy http://USER:PASS@proxy.s4m.online:3128 npm config set https-proxy http://USER:PASS@proxy.s4m.online:3128 npm config set noproxy localhost,127.0.0.1,.internal npm install # To undo later: # npm config delete proxy && npm config delete https-proxy # --- yarn v1 (classic) --- yarn config set proxy http://USER:PASS@proxy.s4m.online:3128 yarn config set https-proxy http://USER:PASS@proxy.s4m.online:3128 # --- Yarn Berry (v2+): .yarnrc.yml --- cat >> .yarnrc.yml <<'YML' httpProxy: "http://USER:PASS@proxy.s4m.online:3128" httpsProxy: "http://USER:PASS@proxy.s4m.online:3128" YML # --- Environment variables: quickest one-off fix --- export https_proxy="http://USER:PASS@proxy.s4m.online:3128" export http_proxy="http://USER:PASS@proxy.s4m.online:3128" export no_proxy="localhost,127.0.0.1,.internal" npm install
Napraw npm install za proxy
Kolejność prób, gdy instalacje się czasowo kończą.
Potwierdź, że to jest proxy
Uruchom npm install -ddd (lub z --verbose) i szukaj ETIMEDOUT lub ECONNREFUSED do rejestru — to wskazuje na zablokowane połączenie wychodzące wymagające proxy.
Ustaw proxy npm i https-proxy
Użyj npm config set dla proxy i https-proxy wskazujących na http://USER:PASS@proxy.s4m.online:3128. Ruch w rejestrze jest HTTPS, więc https-proxy jest tym, co zazwyczaj ma znaczenie.
Dopasuj swoją wersję włóczki
Dla yarn v1 użyj yarn config set; dla Yarn Berry dodaj httpProxy i httpsProxy do .yarnrc.yml. Nie mieszaj dwóch stylów konfiguracji.
Dodaj noproxy dla wewnętrznych rejestrów
Jeśli korzystasz również z prywatnego rejestru w sieci LAN, dodaj jego hosta do noproxy / no_proxy, aby był osiągany bezpośrednio, a nie przez zewnętrzny proxy.
Autoryzacja, prywatne rejestry i pułapki
Dwie rzeczy psują instalacje, nawet po ustawieniu proxy. Po pierwsze, znaki specjalne w haśle: jeśli zawiera @, : lub #, zakoduj je w URL (na przykład @ staje się %40), w przeciwnym razie konfiguracja źle analizuje URL. Po drugie, mieszanka publicznych i prywatnych rejestrów: umieść każdy wewnętrzny host rejestru w noproxy, aby był osiągany bezpośrednio, podczas gdy publiczny rejestr npm przechodzi przez proxy.
HTTP endpoint s4m to uwierzytelnione centrum danych proxy, rozliczane na zasadzie pay-as-you-go — idealne dla runnerów CI i maszyn deweloperskich, które muszą uzyskać dostęp do npm z za kontrolowanego wyjścia. To nie jest proxy domowe i nie jest to pamięć podręczna pakietów; do instalacji offline użyj prawdziwego lustra rejestru. Gdy Twoje CI potrzebuje pojedynczego dozwolonego adresu IP wyjścia, dodaj dedykowany osobisty adres IP. Kod 407 oznacza złe dane uwierzytelniające — zobacz przewodnik 407. Ten sam endpoint obsługuje pip/conda i Docker; zweryfikuj go za pomocą narzędzi.
Pytania, odpowiedzi
Dlaczego npm install wiesza się lub czasami kończy za proxy?
Rejestr jest osiągany przez HTTPS, a twoje połączenie wychodzące jest zablokowane. Ustaw proxy npm i https-proxy (i/lub zmienne środowiskowe http_proxy/https_proxy), aby kierować przez http://USER:PASS@proxy.s4m.online:3128.
Jak skonfigurować Yarn Berry w porównaniu do yarn v1?
Yarn v1 używa yarn config set proxy / https-proxy. Yarn Berry (v2+) używa kluczy httpProxy i httpsProxy w .yarnrc.yml. Używaj jednego stylu na projekt; nie mieszaj ich.
Moje hasło zawiera znaki specjalne i proxy nie działa — dlaczego?
npm analizuje wartość proxy jako URL, więc znaki takie jak @, : lub # w haśle muszą być zakodowane w URL (na przykład @ staje się %40). Po zakodowaniu, dane uwierzytelniające są poprawnie analizowane.
Jak mogę utrzymać wewnętrzny rejestr poza proxy?
Dodaj nazwę hosta wewnętrznego rejestru do listy noproxy (npm) lub no_proxy (env). Ten host jest wtedy osiągany bezpośrednio, podczas gdy ruch z publicznego rejestru nadal przechodzi przez proxy.
Odblokuj swoje instalacje Node
Przekieruj npm i yarn przez uwierzytelniony punkt końcowy HTTP na proxy.s4m.online:3128. Płatność za użycie, z dedykowanym IP, gdy CI potrzebuje dozwolonego wyjścia.
Ludzie znaleźli tę stronę, szukając
- npm i yarn za proxy
- curl z proxy SOCKS5
- jak sprawdzić npm i yarn za proxy
- npm i yarn za proxy za skrobanie
- Ustawienia npm i yarn za proxy
- metody uwierzytelniania SOCKS5 (RFC 1929)
- wyłącznik kill VPN samouczek
- proxy http z płatnością kryptowalutą
- jak skonfigurować wireguard
- openvpn
- wireguard
- FAQ dotyczące VPN i proxy
Rzeczywiste frazy wyszukiwania, na które ta strona odpowiada — powiązane otwierają stronę, która je szczegółowo omawia.