Vous spécifiez les dépendances pour votre application Node.js en les déclarant dans le fichier package.json
.
Par exemple, si vous souhaitez spécifier Lodash en tant que dépendance, votre fichier package.json
peut se présenter comme suit :
{
"dependencies": {
"lodash": "^4.0.1"
}
}
Pendant le déploiement, l'environnement d'exécution Node.js installe automatiquement toutes les dépendances (dependencies
) déclarées dans votre fichier package.json
. Par défaut, la commande npm install
est utilisée. Toutefois, les gestionnaires de packages Yarn et Pnpm sont également compatibles :
Yarn : si un fichier
yarn.lock
existe, la commandeyarn install --production
est utilisée à la place.Pnpm : si un fichier
pnpm-lock.yaml
existe, la commandepnpm install
est utilisée à la place.
Notez que vous devez vous assurer que le fichier yarn.lock
ou pnpm-lock.yaml
n'est pas spécifié dans la section skip_files
de votre fichier app.yaml
.
Par défaut, App Engine met en cache les dépendances obtenues afin de réduire la durée de compilation. Pour installer une version non mise en cache de la dépendance, exécutez la commande suivante :
gcloud app deploy --no-cache
Compatibilité et limitations du fichier package.json
dans l'environnement standard :
Vous pouvez utiliser n'importe quel package Node.js compatible avec Linux dans App Engine, y compris les packages qui requièrent des extensions (C) natives.
Si le champ
engines
est spécifié dans votrepackage.json
, vous devez définir une version Node.js compatible.Toutes les dépendances que vous définissez dans le champ
devDependencies
sont ignorées et ne sont pas installées pour votre application dans App Engine.Le script
start
doit être léger et exclure les étapes de compilation pour optimiser les performances, car il s'exécute chaque fois qu'une nouvelle instance de votre application est créée.
Dépendances privées avec Artifact Registry
Si votre application utilise un module npm privé, vous pouvez utiliser un dépôt de packages Node.js Artifact Registry pour héberger des dépendances privées. Lors du déploiement de votre application, le processus de compilation génère automatiquement des identifiants Artifact Registry pour le compte de service Cloud Build. Vous n'avez donc pas besoin de générer d'identifiants supplémentaires.
Pour inclure des dépendances privées, répertoriez le dépôt Artifact Registry et configurez les paramètres d'authentification auprès du registre dans votre fichier .npmrc
, dans le répertoire de l'application. Exemple :
@SCOPE:registry=https://REGION_ID-npm.pkg.dev/PROJECT_ID/REPOSITORY_NAME
//REGION_ID-npm.pkg.dev/PROJECT_ID/REPOSITORY_NAME:always-auth=true
Notez que cette approche fonctionne également pour le gestionnaire de packages Yarn v1.
Si vous utilisez Yarn v2 ou une version supérieure, répertoriez le dépôt Artifact Registry et configurez les paramètres d'authentification auprès du registre dans votre fichier .yarnrc.yml
, dans le répertoire de l'application. Exemple :
npmScopes:
SCOPE:
npmRegistryServer: https://REGION_ID-npm.pkg.dev/PROJECT_ID/REPOSITORY_NAME
npmAlwaysAuth: true
Ensuite, incluez vos packages dans le fichier package.json
. Exemple :
{
"dependencies": {
" @SCOPE/my-package": "^1.0.0"
}
}
Installer un framework Web
Vous devez utiliser un framework Web pour permettre à votre application de répondre aux requêtes Web. Vous pouvez utiliser n’importe quel framework Web Node.js, y compris les suivants :
Pour utiliser un framework Web particulier, tel que Express.js, ajoutez-le à votre fichier package.json
:
Par exemple, le fichier package.json
obtenu peut se présenter comme suit :
{
"dependencies": {
"lodash": "^4.0.1",
"express": "^4.16.2"
}
}
Installer les bibliothèques clientes Cloud
Les bibliothèques clientes Cloud pour Node.js constituent le moyen idiomatique dont disposent les développeurs Node.js pour intégrer les services Google Cloud, tels que Firestore en mode Datastore et Cloud Storage.
Pour installer la bibliothèque cliente Node.js pour Cloud Storage, procédez comme suit :
Installez les bibliothèques clientes Cloud en local à l'aide d'un gestionnaire de packages :
Pour utiliser
npm
, exécutez :npm install --save @google-cloud/storage
Pour utiliser
yarn
, exécutez :yarn add @google-cloud/storage
Pour utiliser
pnpm
, exécutez :pnpm add @google-cloud/storage
Configurez l'authentification. Vous pouvez configurer les bibliothèques clientes Cloud pour Node.js afin de gérer l'authentification automatiquement.
Suivez la documentation de référence sur la bibliothèque cliente Node.js pour Cloud Storage pour rendre le service Cloud Storage compatible avec votre application.