Para especificar las dependencias de la app de Node.js, debes declararlas en el archivo package.json
.
Por ejemplo, si deseas especificar Lodash
como una dependencia, tu archivo package.json
podría tener el siguiente aspecto:
{
"dependencies": {
"lodash": "^4.0.1"
}
}
Durante la implementación, el entorno de ejecución de Node.js instala automáticamente todas las dependencies
declaradas en tu archivo package.json
. Según la configuración predeterminada, se usa el comando npm install
. Sin embargo, también se admiten los administradores de paquetes Yarn y Pnpm:
Yarn: Si existe un archivo
yarn.lock
, se usa el comandoyarn install --production
en su lugar.Pnpm: Si existe un archivo
pnpm-lock.yaml
, se usa el comandopnpm install
en su lugar.
Ten en cuenta que debes asegurarte de que los archivos yarn.lock
o pnpm-lock.yaml
no se especifiquen en la sección skip_files
de tu archivo app.yaml
.
De manera predeterminada, App Engine almacena en caché las dependencias obtenidas para reducir los tiempos de compilación. Usa el siguiente comando para instalar una versión de la dependencia no almacenada en caché:
gcloud app deploy --no-cache
Asistencia y limitaciones para el archivo package.json
en el entorno estándar:
Puedes usar cualquier paquete de Node.js compatible con Linux con App Engine, incluidos los paquetes que requieren extensiones nativas (C).
Si se especifica el campo
engines
en elpackage.json
, debes definir una versión de Node.js compatible.Todas las dependencias que definas en el campo
devDependencies
se ignorarán y no se instalarán en la app en App Engine.La secuencia de comandos
start
debe ser básica y excluir los pasos de compilación para obtener el mejor rendimiento, ya que la secuencia de comandos se ejecuta cada vez que se crea una instancia nueva de la aplicación.
Dependencias privadas con Artifact Registry
Si tu app usa un módulo de npm privado, puedes usar un repositorio de paquetes de Node.js de Artifact Registry para alojar dependencias privadas. Cuando implementas tu app, el proceso de compilación genera automáticamente credenciales de Artifact Registry para la cuenta de servicio de Cloud Build a fin de que no tengas que generar credenciales adicionales.
Para incluir dependencias privadas, enumera el repositorio de Artifact Registry y establece la configuración de autenticación con el registro en tu archivo .npmrc
en el directorio de la app. Por ejemplo:
@SCOPE:registry=https://REGION_ID-npm.pkg.dev/PROJECT_ID/REPOSITORY_NAME
//REGION_ID-npm.pkg.dev/PROJECT_ID/REPOSITORY_NAME:always-auth=true
Ten en cuenta que este enfoque también funciona con el administrador de paquetes de Yarn v1.
Si usas Yarn v2 o una versión posterior, enumera el repositorio de Artifact Registry y establece la configuración para autenticarte con el registro en tu archivo .yarnrc.yml
en el directorio de la app. Por ejemplo:
npmScopes:
SCOPE:
npmRegistryServer: https://REGION_ID-npm.pkg.dev/PROJECT_ID/REPOSITORY_NAME
npmAlwaysAuth: true
Luego, incluye tus paquetes en el archivo package.json
. Por ejemplo:
{
"dependencies": {
" @SCOPE/my-package": "^1.0.0"
}
}
Instala un marco de trabajo web
Tendrás que usar un marco de trabajo web para habilitar tu aplicación a entregar solicitudes web. Puedes usar cualquier marco de trabajo Node.js, entre ellos:
Para usar un framework web en particular, como Express.js, agrega el framework a tu archivo package.json
:
Si usas npm:
npm install --save express
Si usas yarn:
yarn add express
Si usas pnpm:
pnpm add express
Por ejemplo, el archivo package.json
resultante podría verse de la siguiente manera:
{
"dependencies": {
"lodash": "^4.0.1",
"express": "^4.16.2"
}
}
Instala bibliotecas cliente de Cloud
Bibliotecas cliente de Cloud para Node.js es la forma idiomática que usan los desarrolladores de Node.js para integrarse a los servicios de Google Cloud, como Firestore en modo Datastore (Datastore) y Cloud Storage.
Si deseas instalar la biblioteca cliente de Node.js para Cloud Storage, haz lo siguiente:
Instala las bibliotecas cliente de Cloud de forma local con un administrador de paquetes:
Para usar
npm
, ejecuta lo siguiente:npm install --save @google-cloud/storage
Para usar
yarn
, ejecuta lo siguiente:yarn add @google-cloud/storage
Para usar
pnpm
, ejecuta lo siguiente:pnpm add @google-cloud/storage
Configura la autenticación. Puedes configurar las bibliotecas cliente de Cloud para Node.js a fin de manejar la autenticación automáticamente.
Para implementar la asistencia del servicio de Cloud Storage en tu app, utiliza la biblioteca cliente de Node.js para Cloud Storage.