Almacena paquetes de Node.js en Artifact Registry
En esta guía de inicio rápido, se muestra cómo configurar un repositorio de paquetes de Node.js de Artifact Registry privado y subir un paquete a él.
Antes de comenzar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Instala PowerShell si deseas conectarte a un repositorio de paquetes de Node.js desde Windows
Inicia Cloud Shell
En esta guía de inicio rápido, usarás Cloud Shell, que es un entorno de shell para administrar recursos alojados en en Google Cloud.
Cloud Shell ya viene instalado con Google Cloud CLI. La CLI de gcloud proporciona la interfaz de línea de comandos principal para Google Cloud.
Iniciar Cloud Shell:
Ve a la consola de Google Cloud.
En la barra de herramientas de la consola de Google Cloud, haz clic en Activar Cloud Shell:
Se abrirá una sesión de Cloud Shell dentro de un marco en la parte inferior en la consola.
Usa esta shell para ejecutar los comandos de gcloud
.
Crea un repositorio de paquetes de Node.js
Crea el repositorio para tus artefactos de Node.js.
Crea el repositorio.
Console
Abre la página Repositorios en la consola de Google Cloud.
Haz clic en Crear repositorio.
Especifica
quickstart-nodejs-repo
como el nombre del repositorio.Elige npm como el formato y Estándar como el modo.
En Tipo de ubicación, selecciona Región y, luego, elige la ubicación
us-central1
.Haga clic en Crear.
El repositorio se agrega a la lista de repositorios.
gcloud
Ejecuta el siguiente comando para crear un nuevo repositorio de paquetes de Node.js llamado
quickstart-nodejs-repo
en la ubicaciónus-central1
con la en la descripción “repositorio de Node.js”.gcloud artifacts repositories create quickstart-nodejs-repo --repository-format=npm \ --location=us-central1 --description="Node.js package repository"
Ejecuta el siguiente comando para verificar que se haya creado el repositorio:
gcloud artifacts repositories list
Para obtener más información sobre los comandos de Artifact Registry, ejecuta el comando
gcloud artifacts
.Para simplificar los comandos de
gcloud
, configura el repositorio predeterminado comoquickstart-nodejs-repo
y la ubicación predeterminada comous-central1
. Una vez configurados los valores, no necesitas especificarlos en los comandos degcloud
que requieren un repositorio o una ubicación.Para configurar el repositorio, ejecuta el siguiente comando:
gcloud config set artifacts/repository quickstart-nodejs-repo
Para configurar la ubicación, ejecuta el siguiente comando:
gcloud config set artifacts/location us-central1
Para obtener más información sobre estos comandos, consulta la documentación de establecimiento de la configuración de gcloud.
Configura la Administración de socios de red
Para subir y descargar paquetes, debes configurar tus proyectos de npm con para autenticarse con el repositorio que creaste. En esta guía de inicio rápido, subirás un paquete simple y, luego, lo instalarás en un segundo paquete como dependencia.
Descarga el paquete emoji-regex, un paquete simple que proporciona una expresión regular para que coincida con todos los símbolos y las secuencias de emojis.
npm pack emoji-regex
El comando descarga un archivo del paquete.
Extrae el archivo en un directorio
emoji-regex
. El siguiente comando es para un archivo deemoji-regex
versión 10.1.0:mkdir emoji-regex && tar xvf emoji-regex-10.1.0.tgz -C emoji-regex --strip-components 1
Crea un segundo paquete de npm que usarás para instalar
emoji-regex
de Artifact Registry. Para este paquete, usa el comandonpm init
para crear un paquete básico.mkdir npm-package2 cd npm-package2 npm init -y
Cuando se te solicite, acepta los valores predeterminados.
Configura los proyectos
emoji-regex
ynpm-package2
para que se autentiquen con el repositorio de Artifact Registry que creaste.Ejecuta el siguiente comando. El comando muestra la configuración que se debe agregar a tu archivo de configuración de la Administración de socios de red.
gcloud artifacts print-settings npm --scope=@quickstart
El alcance
quickstart
se asocia con tu repositorio. Cuando incluyes el alcance en para publicar o instalar paquetes, npm usa tu repositorio. Cuándo publicas o instalas paquetes sin un permiso, tu configuración predeterminada de Terraform. Para obtener más información, consulta Node.js descripción general.El resultado del comando
gcloud
se ve como el siguiente ejemplo. PROJECT es el ID de tu proyecto de Google Cloud.@quickstart:registry=https://us-central1-npm.pkg.dev/PROJECT/quickstart-nodejs-repo/ //us-central1-npm.pkg.dev/PROJECT/quickstart-nodejs-repo/:always-auth=true
Agrega la configuración del paso anterior al archivo
.npmrc
del proyecto en cada proyecto de npm. El archivo en el mismo directorio que el archivopackage.json
Para obtener más información sobre el archivo
.npmrc
, consulta la descripción general de Node.js.Cada repositorio de paquetes de Node.js de Artifact Registry se asocia con un archivo npm extremo del registro
https://LOCATION-npm.pkg.dev/PROJECT/REPOSITORY
. Si creas otro repositorio de paquetes de Node.js de Artifact Registry, la Administración de socios de red interactúa con él como un registro independiente con su propio permiso.
Edita
package.json
en los proyectosemoji-regex
ynpm-package2
.Asegúrate de que el valor de
name
incluya el alcancequickstart
.- Para
emoji-regex
:
"name": "@quickstart/emoji-regex"
- Para
npm-package2
:
"name": "@quickstart/npm-package2"
- Para
En
scripts
, agrega una secuencia de comandos para google-artifactregistry-auth, una biblioteca cliente que actualiza las credenciales de los repositorios de Artifact Registry."scripts": { "artifactregistry-login": "npx google-artifactregistry-auth" }
Sube un paquete al repositorio
Actualiza el token de acceso para conectarte al repositorio.
npm run artifactregistry-login
Agrega tu paquete al repositorio. Puedes usar un comando de
npm
oyarn
.npm publish
yarn publish
Visualiza el paquete en el repositorio
Para verificar que tu paquete se haya agregado al repositorio, haz lo siguiente:
Console
Abre la página Repositorios en la consola de Google Cloud.
En la lista de repositorios, haz clic en el repositorio
quickstart-nodejs-repo
.En la página Paquetes, se enumeran los paquetes del repositorio.
Haz clic en un paquete para ver las versiones de este.
gcloud
Para enumerar las imágenes en el repositorio quickstart-nodejs-repo
predeterminado, ejecuta el siguiente comando:
gcloud artifacts packages list
Para ver las versiones de un paquete, ejecuta el siguiente comando:
gcloud artifacts versions list --package=PACKAGE
En el ejemplo anterior, PACKAGE es el ID del paquete.
Instala paquetes
Instala el paquete emoji-regex
desde tu repositorio de Artifact Registry
en npm-package2
.
En el directorio npm-package2
, ejecuta el comando npm install
o yarn add
:
npm install @quickstart/emoji-regex
yarn add @quickstart/emoji-regex
El comando instala el paquete emoji-regex
en el proyecto npm-package2
.
También se actualiza package.json
para establecer emoji-regex
como dependencia.
"dependencies": {
"@quickstart/emoji-regex": "^10.1.0"
}
Limpia
Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.
Antes de quitar un repositorio, asegúrate de que los paquetes que quieres conservar estén disponibles en otra ubicación.
Para borrar el repositorio, haz lo siguiente:
Console
Abre la página Repositorios en la consola de Google Cloud.
En la lista de repositorios, selecciona el repositorio
quickstart-nodejs-repo
.Haz clic en Borrar.
gcloud
Para borrar el repositorio
quickstart-nodejs-repo
, ejecuta el siguiente comando:gcloud artifacts repositories delete quickstart-nodejs-repo
Si deseas quitar la configuración predeterminada de la ubicación y del repositorio que estableciste para la configuración activa de
gcloud
, ejecuta los siguientes comandos:gcloud config unset artifacts/repository gcloud config unset artifacts/location
¿Qué sigue?
- Obtén más información para configurar la autenticación.
- Obtén más información para administrar repositorios.
- Obtén más información para administrar paquetes.
- Lee nuestros recursos sobre DevOps y explora nuestro programa de investigación.