Stocker des packages Node.js dans Artifact Registry
Ce guide de démarrage rapide explique comment configurer une instance Node.js privée pour Artifact Registry le référentiel de packages et y importer un package.
Avant de commencer
- 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
- Installez PowerShell si vous souhaitez vous connecter à un référentiel de packages Node.js à partir de Windows.
Lancer Cloud Shell
Dans ce guide de démarrage rapide, vous allez utiliser Cloud Shell, un environnement shell permettant de gérer les ressources hébergées sur Google Cloud.
Cloud Shell est préinstallé avec Google Cloud CLI : gcloud CLI fournit l'interface de ligne de commande principale pour Google Cloud.
Lancez Cloud Shell :
Accédez à Google Cloud Console.
Dans la barre d'outils de la console Google Cloud, cliquez sur Activer Cloud Shell:
Une session Cloud Shell s'ouvre dans un cadre situé en bas de la console.
Cette interface système vous permet d'exécuter les commandes gcloud
.
Créer un dépôt de packages Node.js
Créez le dépôt pour vos artefacts Node.js.
Créez le dépôt.
Console
Ouvrez la page Dépôts de la console Google Cloud.
Cliquez sur Créer un dépôt.
Spécifiez
quickstart-nodejs-repo
comme nom de dépôt.Choisissez npm comme format et Standard comme mode.
Sous Type d'emplacement, sélectionnez Région, puis l'emplacement
us-central1
.Cliquez sur Create (Créer).
Le dépôt est ajouté à la liste des dépôts.
gcloud
Exécutez la commande suivante pour créer un dépôt de packages Node.js nommé
quickstart-nodejs-repo
à l'emplacementus-central1
avec la description "dépôt Node.js".gcloud artifacts repositories create quickstart-nodejs-repo --repository-format=npm \ --location=us-central1 --description="Node.js package repository"
Exécutez la commande suivante pour vérifier que votre dépôt a bien été créé.
gcloud artifacts repositories list
Exécutez la commande
gcloud artifacts
pour en savoir plus sur les commandes Artifact Registry.Pour simplifier les commandes
gcloud
, définissez le dépôt par défaut surquickstart-nodejs-repo
et l'emplacement par défaut surus-central1
. Une fois les valeurs définies, vous n'avez pas besoin de les spécifier dans les commandesgcloud
nécessitant un dépôt ou un emplacement.Pour définir le dépôt, exécutez la commande suivante :
gcloud config set artifacts/repository quickstart-nodejs-repo
Pour définir l'emplacement, exécutez la commande suivante :
gcloud config set artifacts/location us-central1
Pour plus d'informations sur ces commandes, consultez la documentation gcloud config set.
Configurer npm
Pour importer et télécharger des packages, vous devez configurer vos projets npm avec pour vous authentifier auprès du dépôt que vous avez créé. Pour ce guide de démarrage rapide, vous allez télécharger un package simple, puis l'installer dans un second package en tant que la dépendance.
Téléchargez le package emoji-regex, un package simple qui fournit une expression régulière pour correspondre à tous les symboles et séquences d'emoji.
npm pack emoji-regex
La commande télécharge une archive du package.
Extrayez l'archive dans un répertoire
emoji-regex
. La commande suivante est pour une archive de la version 10.1.0 deemoji-regex
:mkdir emoji-regex && tar xvf emoji-regex-10.1.0.tgz -C emoji-regex --strip-components 1
Créez un deuxième package npm que vous utiliserez pour installer
emoji-regex
à partir d'Artifact Registry. Pour ce package, utiliseznpm init
pour créer un package de base.mkdir npm-package2 cd npm-package2 npm init -y
Lorsque vous y êtes invité, acceptez les valeurs par défaut.
Configurez les projets
emoji-regex
etnpm-package2
pour l'authentification avec le dépôt Artifact Registry que vous avez créé.Exécutez la commande suivante : La commande renvoie les paramètres de configuration à ajouter à votre fichier de configuration npm.
gcloud artifacts print-settings npm --scope=@quickstart
Le champ d'application
quickstart
est associé à votre dépôt. Lorsque vous incluez le champ d'application dans les commandes permettant de publier ou d'installer des packages, npm utilise votre dépôt. Lorsque vous publiez ou installez des packages sans champ d'application, le dépôt par défaut configuré est utilisé. Pour en savoir plus, consultez la présentation de Node.js.Le résultat de la commande
gcloud
ressemble à l'exemple suivant. PROJECT est l'ID de votre projet 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
Ajoutez les paramètres de configuration de l'étape précédente au fichier
.npmrc
du projet dans chaque projet npm. Fichier dans le même répertoire dans le fichierpackage.json
.Pour en savoir plus sur le fichier
.npmrc
, consultez la présentation de Node.js.Chaque dépôt de packages Node.js d'Artifact Registry est associé à un point de terminaison de registre npm
https://LOCATION-npm.pkg.dev/PROJECT/REPOSITORY
. Si vous créez un autre dépôt de packages Artifact Registry Node.js, npm interagit avec lui un registre distinct avec son propre champ d'application.
Modifiez
package.json
dans les projetsemoji-regex
etnpm-package2
.Assurez-vous que la valeur de
name
inclut le champ d'applicationquickstart
.- Pour
emoji-regex
:
"name": "@quickstart/emoji-regex"
- Pour
npm-package2
:
"name": "@quickstart/npm-package2"
- Pour
Sous
scripts
, ajoutez un script pour google-artifactregistry-auth, une bibliothèque cliente qui met à jour les identifiants pour les dépôts Artifact Registry."scripts": { "artifactregistry-login": "npx google-artifactregistry-auth" }
Importer un package dans le dépôt
Actualisez le jeton d'accès pour vous connecter au dépôt.
npm run artifactregistry-login
Ajoutez votre package au dépôt. Vous pouvez utiliser une commande
npm
ouyarn
.npm publish
yarn publish
Afficher le package dans le dépôt
Pour vérifier que votre package a bien été ajouté au dépôt :
Console
Ouvrez la page Dépôts de la console Google Cloud.
Dans la liste des dépôts, cliquez sur le dépôt
quickstart-nodejs-repo
.La page Packages répertorie les packages du dépôt.
Cliquez sur un package pour afficher ses versions.
gcloud
Pour répertorier les images dans le dépôt quickstart-nodejs-repo
par défaut, exécutez la commande suivante :
gcloud artifacts packages list
Pour afficher les versions d'un package, exécutez la commande suivante :
gcloud artifacts versions list --package=PACKAGE
Où PACKAGE correspond à l'ID de package.
Installer des packages
Installer le package emoji-regex
à partir de votre dépôt Artifact Registry
dans npm-package2
.
Dans le répertoire npm-package2
, exécutez la commande npm install
ou yarn add
:
npm install @quickstart/emoji-regex
yarn add @quickstart/emoji-regex
La commande installe le package emoji-regex
dans le projet npm-package2
.
Elle met également à jour package.json
pour définir emoji-regex
comme dépendance.
"dependencies": {
"@quickstart/emoji-regex": "^10.1.0"
}
Effectuer un nettoyage
Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud, procédez comme suit :
Avant de supprimer un dépôt, assurez-vous que tous les packages que vous souhaitez conserver sont disponibles dans un autre emplacement.
Pour supprimer le dépôt :
Console
Ouvrez la page Dépôts de la console Google Cloud.
Dans la liste des dépôts, sélectionnez le dépôt
quickstart-nodejs-repo
.Cliquez sur Supprimer.
gcloud
Pour supprimer le dépôt
quickstart-nodejs-repo
, exécutez la commande suivante :gcloud artifacts repositories delete quickstart-nodejs-repo
Si vous souhaitez supprimer le dépôt par défaut et les paramètres d'emplacement que vous avez définis pour la configuration
gcloud
active, exécutez les commandes suivantes :gcloud config unset artifacts/repository gcloud config unset artifacts/location
Étape suivante
- En savoir plus sur la configuration de l'authentification
- En savoir plus sur la gestion des dépôts
- En savoir plus sur la gestion des packages
- Consultez nos ressources sur le DevOps et découvrez notre programme de recherche.