En esta página, se describe cómo configurar variables de entorno para tu trabajo de Cloud Run.
Cuando configuras las variables de entorno, se insertan en el contenedor y tu código puede acceder a ellas. Además, se establecen como pares clave-valor.
Nombres reservados
Las variables de entorno definidas en el contrato de entorno de ejecución del contenedor están reservadas y no se pueden configurar.
Cantidad máxima de variables de entorno
Ten en cuenta que puedes establecer un máximo de 1,000 variables de entorno por contenedor para cada trabajo de Cloud Run.
Roles obligatorios
Para obtener los permisos que necesitas para configurar los trabajos de Cloud Run, pídele a tu administrador que te otorgue los siguientes roles de IAM en el trabajo:
-
Desarrollador de Cloud Run (
roles/run.developer
): El trabajo de Cloud Run -
Usuario de la cuenta de servicio (
roles/iam.serviceAccountUser
): Es la identidad del servicio.
Para obtener una lista de los roles y los permisos de IAM asociados con Cloud Run, consulta los roles de IAM de Cloud Run y los permisos de IAM de Cloud Run. Si tu trabajo de Cloud Run interactúa con las APIs deGoogle Cloud , como las bibliotecas cliente de Cloud, consulta la guía de configuración de identidades del servicio. Para obtener más información sobre cómo otorgar roles, consulta permisos de implementación y administra el acceso.
Configure las variables de entorno
Puedes establecer variables de entorno para trabajos nuevos y existentes. Ten en cuenta que la marca --set-env-vars
es una acción destructiva que borra las variables de entorno establecidas anteriormente que no se incluyen en la nueva lista de variables de entorno.
Puedes configurar variables de entorno con la Google Cloud consola, la gcloud CLI o un archivo YAML:
Console
En la Google Cloud consola, ve a la página de trabajos de Cloud Run:
Selecciona Trabajos en el menú y haz clic en Implementar contenedor para completar la página de configuración de trabajo inicial. Si quieres configurar un trabajo existente, selecciona el trabajo y, luego, haz clic en Editar.
Haz clic en Contenedores, volúmenes, conexiones y seguridad para expandir la página de propiedades del trabajo.
Haz clic en la pestaña Variables.
- Puedes hacer lo siguiente:
- Si quieres agregar una variable, haz clic en Agregar variable y especifica el nombre que deseas para la variable y su valor en los cuadros de texto Nombre y Valor.
- Si deseas cambiar el valor de una variable, reemplaza el valor actual en el cuadro de texto Value (Valor) por el que deseas.
- Si quitas una o más variables de entorno, coloca el cursor a la izquierda del cuadro de texto Value (Valor) de la variable que deseas quitar para que se muestre el ícono de la Papelera, y haz clic en este.
- Puedes hacer lo siguiente:
Haz clic en Crear o Actualizar.
gcloud
Para especificar variables de entorno cuando implementes un trabajo, usa la marca --set-env-vars
:
gcloud run jobs deploy JOB_NAME --image IMAGE_URL --update-env-vars KEY1=VALUE1,KEY2=VALUE2
Para especificar variables de entorno cuando actualices un trabajo, usa la marca --set-env-vars
después de crear el trabajo:
gcloud run jobs create JOB_NAME --image IMAGE_URL --update-env-vars KEY1=VALUE1,KEY2=VALUE2 gcloud run jobs update JOB_NAME --update-env-vars KEY1=VALUE1,KEY2=VALUE2
Reemplaza lo siguiente:
- JOB_NAME por el nombre de tu trabajo.
- KEY1=VALUE1,KEY2=VALUE2, con la lista separada por comas de los nombres de las variables y sus valores.
- IMAGE_URL por una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/job:latest
.
Configura muchas variables de entorno
Si tienes muchas variables de entorno que no se pueden enumerar en formatoKEY1=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"
Caracteres de coma de escape
Debido a que el carácter de coma,
se usa para dividir las variables de entorno, si tu variable de entorno contiene caracteres de coma como valores, debes escapar esos delimitadores especificando un carácter delimitador diferente, por ejemplo, @
:
--set-env-vars "^@^KEY1=value1,value2,value3@KEY2=..."
YAML
Si creas un trabajo nuevo, omite este paso. Si actualizas un trabajo existente, descarga su configuración de YAML:
gcloud run jobs describe JOB_NAME --format export > job.yaml
- Actualiza los atributos
name
yvalue
enenv
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
Reemplaza KEY-1, VALUE-1 por la variable y el valor del entorno. También puedes agregar más variables y valores según sea necesario.
También puedes especificar más opciones de configuración, como variables de entorno o límites de memoria.
- Actualiza los atributos
Actualiza la configuración del trabajo existente:
gcloud run jobs replace job.yaml
Terraform
Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform.
Agrega 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"
}
}
}
}
}
Reemplaza lo siguiente:
- JOB_NAME por el nombre del trabajo de Cloud Run.
- REGION con la Google Cloud región. Por ejemplo,
europe-west1
. - KEY-1 por la variable de entorno.
- VALUE-1 con el valor
De forma opcional, agrega más bloques env
para establecer variables de entorno adicionales.
Configura variables de entorno predeterminadas en el contenedor
Puedes usar la sentencia ENV
en un Dockerfile a fin de establecer valores predeterminados para las variables de entorno:
ENV KEY1=VALUE1,KEY2=VALUE2
Orden de prioridad: Comparación entre contenedores y variables de trabajo
Si configuras una variable de entorno predeterminada en el contenedor y, también configuras una variable de entorno con el mismo nombre en el trabajo de Cloud Run, el valor establecido en el trabajo tiene prioridad.
Actualiza las variables de entorno
Puedes actualizar las variables de entorno para los trabajos existentes. Este es un enfoque no destructivo que modifica o agrega variables de entorno, pero no borra las variables de entorno configuradas anteriormente.
Console
Para actualizar las variables de entorno con la consola de Google Cloud , sigue estos pasos:
En la consola de Google Cloud , ve a Cloud Run:
Selecciona tu trabajo de la lista y haz clic en Editar e implementar 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 Listo.
Haz clic en Implementar.
gcloud
Para actualizar las variables de entorno de un trabajo existente, usa la marca --update-env-vars
:
gcloud run jobs update JOB_NAME --update-env-vars KEY1=VALUE1,KEY2=VALUE2
Reemplaza lo siguiente:
- JOB_NAME por el nombre de tu trabajo.
- KEY1=VALUE1,KEY2=VALUE2, con la lista separada por comas de los nombres y valores de las variables.
Visualiza 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:
Console
En la Google Cloud consola, ve a la página de trabajos de Cloud Run:
Haz clic en el trabajo que te interesa para abrir la página Detalles del trabajo.
Haz clic en Ver y editar la configuración del trabajo.
Localiza la configuración de variables de entorno en los detalles de configuración.
gcloud
Usa el siguiente comando:
gcloud run jobs describe JOB_NAME
Ubica la configuración de las variables de entorno en la configuración que se muestra.
Borra variables de entorno
Puedes borrar variables de entorno para trabajos existentes.
Console
Para borrar variables de entorno con la Google Cloud consola, haz lo siguiente:
En la consola de Google Cloud , ve a Cloud Run:
Selecciona tu trabajo de la lista y haz clic en Editar e implementar nueva revisión.
Haz clic en la pestaña Contenedor.
En la pestaña Variables y Secrets, mueve el cursor a la izquierda del campo Value de la variable de entorno que deseas quitar para que se muestre el ícono
Borrar y haz clic en él.Haz clic en Listo.
Haz clic en Implementar.
gcloud
Para quitar de forma selectiva variables de entorno de un trabajo existente, usa la marca --remove-env-vars
:
gcloud run jobs update JOB_NAME --remove-env-vars KEY1,KEY2
Reemplaza lo siguiente:
- JOB_NAME por el nombre de tu trabajo.
- KEY1,KEY2, con la lista de nombres de variables separados por comas.
Como alternativa, puedes borrar todas las variables de entorno configuradas previamente con la marca --clear-env-vars
:
gcloud run jobs update JOB_NAME --clear-env-vars
Reemplaza lo siguiente:
- JOB_NAME por el nombre de tu trabajo.