Configure containers for worker pools

This page describes how to configure the entrypoint command, and arguments for a Cloud Run worker pool.

When Cloud Run starts a container, it runs the image's default entrypoint command and default command arguments. If you want to override the image's default entrypoint and command arguments, you can use the command and args fields in the container configuration. The command field specifies the actual command run by the container. The args field specifies the arguments passed to that command.

Note that you can have a maximum of 1000 arguments per container for each worker pool.

Required roles

To get the permissions that you need to configure and deploy Cloud Run worker pools, ask your administrator to grant you the following IAM roles:

For a list of IAM roles and permissions that are associated with Cloud Run, see Cloud Run IAM roles and Cloud Run IAM permissions . If your Cloud Run worker pool interfaces with Google Cloud APIs, such as Cloud Client Libraries, see the service identity configuration guide . For more information about granting roles, see deployment permissions and manage access .

Configure entrypoint and arguments

Any configuration change leads to the creation of a new revision. Subsequent revisions will also automatically get this configuration setting unless you make explicit updates to change it.

The specified container command and arguments override the default image ENTRYPOINT and CMD .

You can set entrypoint command and arguments for a Cloud Run worker pool using the Google Cloud console, the Google Cloud CLI, or Terraform:

Console

  1. In the Google Cloud console, go to Cloud Run:

    Go to Cloud Run

  2. Select Worker poolsfrom the menu, and click Deploy containerto configure a new worker pool. If you are configuring an existing worker pool, click the worker pool, then click Edit and deploy new revision.

  3. If you are configuring a new worker pool, fill out the initial worker pool page, then click Container(s), Volumes, Networking, Securityto expand the worker pools configuration page.

  4. Click the Containertab.

    image

    • Specify the command you want the container to run if you don't want to use the entry point command defined in the container image. Optionally, specify the arguments to the entrypoint command.
  5. Click Createor Deploy.

gcloud

To update the start command and arguments for an existing service:

gcloud  
beta  
run  
worker-pools  
update  
 WORKER_POOL 
  
--command  
 COMMAND 
  
--args  
 ARG1 
, ARG-N 

Replace the following:

  • WORKER_POOL : the name of the worker pool.
  • COMMAND : the command that the container starts with, if you are not using the default command.
  • ARG1 : the argument you are sending to the container command. Use a comma-delimited list for more than one argument.

To specify entrypoint and arguments during deployment of a new or existing worker pool:

gcloud  
beta  
run  
worker-pools  
deploy  
--image  
 IMAGE_URL 
  
--command  
 COMMAND 
  
--args  
 ARG1 
, ARG-N 

Replace IMAGE_URL with a reference to the container image that contains the worker pool, such as us-docker.pkg.dev/cloudrun/container/worker-pool:latest .

If you want to restore the container defaults for the entrypoint commands and arguments, supply empty strings as follows:

gcloud  
beta  
run  
worker-pools  
deploy  
--image  
 IMAGE_URL 
  
--command  
 "" 
  
--args  
 "" 

Terraform

To learn how to apply or remove a Terraform configuration, see Basic Terraform commands .

  resource 
  
 "google_cloud_run_v2_worker_pool" 
  
 "default" 
  
 { 
  
 name 
  
 = 
  
 " WORKER_POOL 
" 
  
 location 
  
 = 
  
 " REGION 
" 
  
 launch_stage 
  
 = 
  
 "BETA" 
  
 template 
  
 { 
  
 containers 
  
 { 
  
 image 
  
 = 
  
 " IMAGE_URL 
" 
  
 command 
  
 = 
  
 [ 
 " COMMAND 
" 
 ] 
  
 args 
  
 = 
  
 [ 
 " ARG1 
", " ARG2 
" 
 ] 
  
 } 
  
 } 
 } 
 

Replace the following:

  • WORKER_POOL : the name of the worker pool.
  • REGION : the Google Cloud region—for example, europe-west1 .
  • IMAGE_URL : a reference to the container image that contains the worker pool, such as us-docker.pkg.dev/cloudrun/container/worker-pool:latest .
  • COMMAND : the command that the container starts with, if you are not using the default command.
  • ARG1 , ARG2 : the argument(s) you are sending to the container command.

Configure container start order for sidecar deployments

To specify the container start up order in a sidecar deployment , use the container dependencies feature. Specify any containers that have dependencies and list the containers they depend on, so those containers are started first. The containers that don't have any dependencies are always started first and concurrently.

To use this feature successfully, you must use startup health check probes . The startup probe enables Cloud Run to inspect the health of a dependent container, making sure it passes successfully before it starts up the next container. If you don't use health checks, containers are started in the specified order even if containers they depend on fail to start.

Note that there is no default startup health check probe for worker pools.

Use the Google Cloud console or the Google Cloud CLI to specify the startup order:

Console

  1. In the Google Cloud console, go to the Cloud Run page:

    Go to Cloud Run

    • Select Worker poolsfrom the menu.
    • For an existing worker pool, click the worker pool in the list and select Edit and deploy new revisionto display the revision deployment form.
    • For a new worker pool, click Deploy containerto display the Create worker poolform.
  2. For a new worker pool, specify the worker pool name, ingress container URL, CPU allocation, ingress control, and authentication. In the Container(s), Volumes, Networking, Securitytab, do the following:

    1. Configure the ingress container.
    2. To add each of the other containers you are deploying, click Add container.
    3. For all containers except the ingress container, configure a startup health check .
    4. If a container needs to be started after certain other containers, select those containers in the Container startup ordermenu.
  3. For an existing worker pool, follow these steps:

    1. For all containers except the ingress container, configure a startup health check .
    2. Each container is shown with its own Container startup ordermenu. If a container needs other containers to start first before it can start, use the Container startup ordermenu to select the containers that must start first.
  4. Finish any other required configurations, then click Createfor a new worker pool or Deployfor an existing worker pool. Wait for the deployment to finish.

gcloud

Before using the Google Cloud CLI to specify startup order, configure a startup health check .

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. To deploy multiple containers to a service with a specified startup order, run the command:

gcloud  
beta  
run  
worker-pools  
deploy  
 WORKER_POOL 
  
 \ 
  
--container  
 CONTAINER_1_NAME 
  
--image = 
 ' WORKER_POOL_IMAGE 
' 
  
--container  
 CONTAINER_2_NAME 
  
--image = 
 ' SIDECAR_IMAGE 
' 
  
--depends-on = 
 CONTAINER_1_NAME 
  
 \ 
  
--container  
 CONTAINER_3_NAME 
  
--image = 
 ' SIDECAR_IMAGE 
' 
  
--depends-on = 
 CONTAINER_1_NAME 
, CONTAINER_2_NAME 

Replace the following:

  • WORKER_POOL : the name of the worker pool.
  • IMAGE_URL : a reference to the container image that contains the worker pool, such as us-docker.pkg.dev/cloudrun/container/worker-pool:latest .
  • SIDECAR_IMAGE : a reference to the sidecar container image.

    If you want to configure each container in the deploy command, supply each container's configuration after the container parameters.

View container configuration for the worker pool

  1. In the Google Cloud console, go to Cloud Run:

    Go to Cloud Run

  2. Click Worker poolsto display the list of deployed worker pools.

  3. Click the worker pool you want to examine to display its details pane.

  4. Click the Containerstab to display worker pool container configuration.

Create a Mobile Website
View Site in Mobile | Classic
Share by: