Salta al contenuto principale
Versione: 5.x

Uplink

Un uplink è un collegamento con un registro esterno che fornisce accesso ai pacchetti esterni.

Uplink

Utilizzo

uplinks:
npmjs:
url: https://registry.npmjs.org/
server2:
url: http://mirror.local.net/
timeout: 100ms
server3:
url: http://mirror2.local.net:9000/
baduplink:
url: http://localhost:55666/

Configurazione

Puoi definire più upling e ognuno di essi deve avere un nome unico (chiave). Possono avere le seguenti proprietà:

ProprietàTipoRichiestoEsempioSupportoDescrizioneDefault
urlstringahttps://registry.npmjs.org/tuttiL'url del registronpmjs
castringaNo~./ssl/client.crt'tuttiCertificato del percorso SSLNo default
timeoutstringaNo100mstuttiimposta nuovo timeout per la richiesta30s
maxagestringaNo10mtuttila soglia di tempo alla cache è valida2m
fail_timeoutstringaNo10mtuttidefinisce il tempo massimo quando una richiesta fallisce5m
max_failsnumeroNo2tuttilimite massimo di fallimenti della richiesta2
cachebooleanoNo[true,false]>= 2.1salva nella cache tutti gli archivi tar remoti in memoriatrue
autenticazioneelencoNovedi sotto>= 2.5assegna l'intestazione 'Autorizzazione' altre infodisabilitato
intestazionielencoNoautorizzazione: "Bearer SecretJWToken=="tuttielenco di intestazioni personalizzate per l'uplinkdisabilitato
strict_sslbooleanoNo[true,false]>= 3.0Se true, richiede che i certificati SSL siano validi.true
agent_optionsoggettoNomaxSockets: 10>= 4.0.2opzioni per l'Agente HTTP o HTTPS responsabile della gestione della persistenza della connessione dell'upling e riutilizzo altre infoNo default

Proprietà d'autenticazione

La proprietà auth ti consente di usare un token d'autenticazione con un uplink. Usa la variabile ambientale predefinita:

uplinks:
private:
url: https://private-registry.domain.com/registry
auth:
type: bearer
token_env: true # punta di default alla variabile ambientale `NPM_TOKEN`

o tramite una variabile ambientale personalizzata specificata:

uplinks:
private:
url: https://private-registry.domain.com/registry
auth:
type: bearer
token_env: FOO_TOKEN # sovrascrive la `NPM_TOKEN` predefinita con una personalizzata

token_env: FOO_TOKEN userà internamente process.env['FOO_TOKEN']

o specificando direttamente un token sul file di configurazione (sconsigliato per motivi di sicurezza):

uplinks:
private:
url: https://private-registry.domain.com/registry
auth:
type: bearer
token: 'token'

Nota: il token ha la priorità su token_env

Devi sapere

  • Gli upling devono esser registri compatibili con gli endpoint di npm. Eg: verdaccio, sinopia@1.4.0, npmjs registry, yarn registry, JFrog, Nexus and more.
  • Impostare la cache a false aiuterà a risparmiare spazio sul tuo disco rigido. Ciò eviterà di archiviare tarballs (archivi tar), ma manterrà i meta-dati in cartelle.
  • Diversi uplink potrebbero rallentare la ricerca dei tuoi pacchetti. Per ogni richiesta effettuata da un client npm, Verdaccio effettua 1 chiamata a ogni uplink configurato.
  • Il formato (timeout, maxage e fail_timeout) segue le unità di misura di NGINX
  • Utilizzando il Chart di Helm, puoi utilizzare secretEnvVars per iniettare delle variabili ambientali sensibili, utilizzabili per configurare l'autenticazione dell'uplink privato.