En esta página se describe cómo configurar variables de entorno para un trabajo de Cloud Run.
Cuando define variables de entorno, se insertan en el contenedor y su código puede acceder a ellas. Las variables de entorno se definen como pares clave/valor.
Nombres reservados
Las variables de entorno definidas en el contrato de tiempo de ejecución del contenedor están reservadas y no se pueden definir.
Número máximo de variables de entorno
Ten en cuenta que puedes definir un máximo de 1000 variables de entorno por contenedor en cada trabajo de Cloud Run.
Roles obligatorios
Para obtener los permisos que necesitas para configurar tareas de Cloud Run, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en la tarea:
-
Desarrollador de Cloud Run (
roles/run.developer
): la tarea de Cloud Run -
Usuario de cuenta de servicio (
roles/iam.serviceAccountUser
): la identidad del servicio
Para ver una lista de los roles y permisos de gestión de identidades y accesos asociados a Cloud Run, consulta los artículos sobre roles de gestión de identidades y accesos de Cloud Run y permisos de gestión de identidades y accesos de Cloud Run. Si tu trabajo de Cloud Run interactúa con APIs deGoogle Cloud , como las bibliotecas de cliente de Cloud, consulta la guía de configuración de la identidad de servicio. Para obtener más información sobre cómo conceder roles, consulta los artículos sobre permisos de implementación y gestión del acceso.
Establece variables de entorno:
Puedes definir variables de entorno para tareas nuevas y actuales. Ten en cuenta que la marca --set-env-vars
es una acción destructiva que elimina las variables de entorno definidas anteriormente que no se incluyan en la nueva lista de variables de entorno.
Puedes definir variables de entorno mediante la Google Cloud consola, la CLI de gcloud o un archivo YAML:
Consola
En la Google Cloud consola, ve a la página de trabajos de Cloud Run:
Seleccione Trabajos en el menú y haga clic en Implementar contenedor para rellenar la página de configuración inicial del trabajo. Si vas a configurar un trabajo que ya existe, selecciona el trabajo y haz clic en Editar.
Haz clic en Contenedores, volúmenes, conexiones y seguridad para desplegar la página de propiedades del trabajo.
Haz clic en la pestaña Variables.
- En la pestaña Variables y secretos, haz clic en Añadir variable y especifica el nombre y el valor que quieras para la variable en los campos Nombre y Valor. Para obtener más información sobre cómo definir varias variables de entorno o usar caracteres de escape, consulta Definir varias variables de entorno.
Haz clic en Crear o en Actualizar.
gcloud
Para especificar variables de entorno al crear un trabajo, usa la marca --set-env-vars
:
gcloud run jobs create JOB_NAME --image IMAGE_URL --set-env-vars KEY1=VALUE1,KEY2=VALUE2
Haz los cambios siguientes:
- JOB_NAME: el nombre de tu trabajo.
- KEY1=VALUE1,KEY2=VALUE2: lista de nombres de variables y sus valores separados por comas.
- IMAGE_URL: una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/job:latest
.
Para obtener más información sobre cómo definir varias variables de entorno o usar caracteres de escape, consulta Definir varias variables de entorno.
YAML
Si vas a crear un trabajo, sáltate este paso. Si vas a actualizar una tarea, descarga su configuración YAML:
gcloud run jobs describe JOB_NAME --format export > job.yaml
- Actualiza los atributos
name
yvalue
deenv
, tal como se muestra encontainers:
:
apiVersion: run.googleapis.com/v1 kind: Job metadata: name: JOB spec: template: spec: template: spec: containers: - image: IMAGE env: - name: KEY-1 value: VALUE-1 - name: KEY-N value: VALUE-N
Sustituye KEY-1 y VALUE-1 por la variable de entorno y el valor. También puede añadir más variables y valores según sea necesario.
También puede especificar más configuraciones, como variables de entorno o límites de memoria.
- Actualiza los atributos
Actualiza la configuración de la tarea:
gcloud run jobs replace job.yaml
Terraform
Para saber cómo aplicar o quitar una configuración de Terraform, consulta Comandos básicos de Terraform.
Añade lo siguiente a un recursogoogle_cloud_run_v2_job
en tu configuración de Terraform:resource "google_cloud_run_v2_job" "default" {
name = "JOB_NAME"
location = "REGION"
template {
template {
containers {
image = "us-docker.pkg.dev/cloudrun/container/job"
env {
name = "KEY-1"
value = "VALUE-1"
}
env {
name = "KEY-N"
value = "VALUE-N"
}
}
}
}
}
Haz los cambios siguientes:
- JOB_NAME: el nombre de tu tarea de Cloud Run.
- REGION: la Google Cloud región. Por ejemplo,
europe-west1
. - KEY-1: la variable de entorno.
- VALUE-1: el valor asociado a la clave.
También puedes añadir más bloques env
para definir variables de entorno adicionales.
Definir variables de entorno predeterminadas en el contenedor
Puedes usar la instrucción ENV
en un Dockerfile para definir valores predeterminados para las variables de entorno:
ENV KEY1=VALUE1,KEY2=VALUE2
Orden de prioridad: variables de contenedor frente a variables de trabajo
Si defines una variable de entorno predeterminada en el contenedor y también defines una variable de entorno con el mismo nombre en el trabajo de Cloud Run, el valor definido en el trabajo tiene prioridad.
Definir varias variables de entorno
Puedes definir varias variables de entorno mediante el archivo .env
o la marca --set-env-vars
.
Definir varias variables de entorno con el archivo .env
Consola
En la Google Cloud consola, ve a la página de trabajos de Cloud Run:
Seleccione Trabajos en el menú y haga clic en Implementar contenedor para rellenar la página de configuración inicial del trabajo. Si vas a configurar un trabajo que ya existe, selecciona el trabajo y haz clic en Editar.
Haz clic en Contenedores, volúmenes, conexiones y seguridad para desplegar la página de propiedades del trabajo.
Haz clic en la pestaña Contenedor.
- En la pestaña Variables y secretos, haz clic en Añadir variable y pega el contenido de tu archivo
.env
en el campo Nombre. Cloud Run rellena automáticamente el campo Valor y crea variables nuevas para cada par clave-valor que definas en el archivo.env
.
- En la pestaña Variables y secretos, haz clic en Añadir variable y pega el contenido de tu archivo
Haz clic en Crear o en Actualizar.
gcloud
Para especificar varias variables de entorno desde el archivo .env
, ejecuta el siguiente comando:
gcloud beta run jobs create JOB_NAME --image=IMAGE_URL --env-vars-file=ENV_FILE_PATH
Haz los cambios siguientes:
- JOB_NAME: el nombre de tu tarea de Cloud Run.
- IMAGE_URL: una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/job:latest
. - ENV_FILE_PATH: ruta al archivo
.env
.
Definir varias variables de entorno con la marca --set-env-vars
Si tienes varias variables de entorno que no se pueden enumerar en el formato KEY1=VALUE1,KEY2=VALUE2
, puedes repetir la marca --set-env-vars
varias veces:
[...] --set-env-vars "KEY1=VALUE1" \ --set-env-vars "KEY2=VALUE2" \ --set-env-vars "KEY3=VALUE3"
Evitar caracteres de coma
Como el carácter de coma,
se usa para dividir las variables de entorno, si tu variable de entorno contiene comas como valores, debes escapar esos delimitadores especificando otro carácter delimitador, por ejemplo, @
:
--set-env-vars "^@^KEY1=value1,value2,value3@KEY2=..."
Actualizar variables de entorno
Puedes actualizar las variables de entorno de los trabajos que ya tengas. Se trata de un enfoque no destructivo que cambia o añade variables de entorno, pero no elimina las que se hayan definido anteriormente.
Consola
Para actualizar las variables de entorno mediante la consola Google Cloud , sigue estos pasos:
En la Google Cloud consola, ve a Cloud Run:
Selecciona el trabajo de la lista y haz clic en Editar y desplegar nueva revisión.
Haz clic en la pestaña Contenedor.
En la pestaña Variables y secretos, edita los campos Nombre o Valor y haz clic en Hecho.
Haz clic en Desplegar.
gcloud
Para actualizar las variables de entorno de un trabajo, usa la marca
--update-env-vars
:
gcloud run jobs update JOB_NAME --update-env-vars KEY1=VALUE1,KEY2=VALUE2
Haz los cambios siguientes:
- JOB_NAME: el nombre de tu trabajo.
- KEY1=VALUE1,KEY2=VALUE2: lista de nombres y valores de variables separados por comas.
Ver la configuración de las variables de entorno
Para ver la configuración actual de las variables de entorno de tu trabajo de Cloud Run, sigue estos pasos:
Consola
En la Google Cloud consola, ve a la página de trabajos de Cloud Run:
Haz clic en el trabajo que te interese para abrir la página Detalles del trabajo.
Haz clic en Ver y editar configuración de trabajo.
Busca la configuración de las variables de entorno en los detalles de la configuración.
gcloud
Usa el siguiente comando:
gcloud run jobs describe JOB_NAME
Busca la configuración de las variables de entorno en la configuración devuelta.
Eliminar variables de entorno
Puedes eliminar variables de entorno de los trabajos que ya tengas.
Consola
Para eliminar variables de entorno con la consola Google Cloud , sigue estos pasos:
En la Google Cloud consola, ve a Cloud Run:
Selecciona el trabajo de la lista y haz clic en Editar y desplegar nueva revisión.
Haz clic en la pestaña Contenedor.
En la pestaña Variables y secretos, mueve el cursor a la izquierda del campo Valor de la variable de entorno que quieres eliminar para que se muestre el icono
Eliminar y haz clic en él.Haz clic en Listo.
Haz clic en Desplegar.
gcloud
Para eliminar de forma selectiva las variables de entorno de un trabajo, usa la marca
--remove-env-vars
:
gcloud run jobs update JOB_NAME --remove-env-vars KEY1,KEY2
Haz los cambios siguientes:
- JOB_NAME: el nombre de tu trabajo.
- KEY1,KEY2: lista de nombres de variables separados por comas.
También puedes borrar todas las variables de entorno definidas anteriormente con la marca --clear-env-vars
:
gcloud run jobs update JOB_NAME --clear-env-vars