Ir al contenido

Usar npm con Pier

El registro de Pier sigue la especificación HTTP del registro de npm de extremo a extremo, así que cualquier versión de npm de la 7 a la 11 funciona con él sin necesidad de flags especiales.

.npmrc en la raíz de tu proyecto (o ~/.npmrc para un valor global por defecto):

registry=https://YOUR-PIER-HOST/registry/npm/
//YOUR-PIER-HOST/registry/npm/:_authToken=pier_npm_…
always-auth=true

always-auth=true es inofensivo en npm 7+ y obligatorio para yarn 1 — mantenlo para que el .npmrc sirva para ambos clientes.

Ventana de terminal
# Paquete público — proxiado desde npmjs.org si el proxy upstream está activado
npm install left-pad
# Paquete privado
npm install @your-org/internal-lib
# dist-tag específico
npm install @your-org/internal-lib@beta
Ventana de terminal
# package.json contiene la versión
npm publish
# O fija el destino sin tocar .npmrc
npm publish --registry=https://YOUR-PIER-HOST/registry/npm/
Ventana de terminal
npm login --auth-type=web --registry=https://YOUR-PIER-HOST/registry/npm/
# → abre el navegador, autentícate en el panel de Pier (con 2FA)
# → el token pier_npm_… se escribe en .npmrc automáticamente

El npm login clásico (sin --auth-type=web) usa el flujo de creación de usuario de CouchDB — también soportado. El flujo web hereda el 2FA del panel; el flujo de CouchDB no solicita OTP. Si necesitas exigir 2FA en cada emisión de token, desactiva el login de CouchDB en los ajustes del panel.

Ventana de terminal
npm dist-tag add @your-org/[email protected] beta
npm dist-tag ls @your-org/lib
npm dist-tag rm @your-org/lib beta
Ventana de terminal
npm deprecate @your-org/[email protected] "use 1.2.x"
npm deprecate @your-org/[email protected] "" # revertir la obsolescencia
Ventana de terminal
npm unpublish @your-org/[email protected]
npm unpublish @your-org/lib --force # paquete completo
Versión de npmEstadoNotas
7Funciona sin configuración adicional
8Funciona sin configuración adicional
9Funciona sin configuración adicional
10Funciona sin configuración adicional
11La advertencia de configuración de always-auth es inofensiva
  • 401 Unauthorized al instalar — falta el token o falta always-auth=true en el .npmrc. Consulta Solución de problemas.
  • 409 Conflict al publicar — la versión ya existe. Increméntala en package.json.
  • npm warn Unknown project config "always-auth" en npm 11 — el flag está obsoleto pero sigue respetándose. Puedes ignorar la advertencia.