Interface Runnable.ContainerOrBuilder (0.42.0)

public static interface Runnable.ContainerOrBuilder extends MessageOrBuilder

Implements

MessageOrBuilder

Methods

getBlockExternalNetwork()

public abstract boolean getBlockExternalNetwork()

If set to true, external network access to and from container will be blocked, containers that are with block_external_network as true can still communicate with each other, network cannot be specified in the container.options field.

bool block_external_network = 9;

Returns
Type Description
boolean

The blockExternalNetwork.

getCommands(int index)

public abstract String getCommands(int index)

Overrides the CMD specified in the container. If there is an ENTRYPOINT (either in the container image or with the entrypoint field below) then commands are appended as arguments to the ENTRYPOINT.

repeated string commands = 2;

Parameter
Name Description
index int

The index of the element to return.

Returns
Type Description
String

The commands at the given index.

getCommandsBytes(int index)

public abstract ByteString getCommandsBytes(int index)

Overrides the CMD specified in the container. If there is an ENTRYPOINT (either in the container image or with the entrypoint field below) then commands are appended as arguments to the ENTRYPOINT.

repeated string commands = 2;

Parameter
Name Description
index int

The index of the value to return.

Returns
Type Description
ByteString

The bytes of the commands at the given index.

getCommandsCount()

public abstract int getCommandsCount()

Overrides the CMD specified in the container. If there is an ENTRYPOINT (either in the container image or with the entrypoint field below) then commands are appended as arguments to the ENTRYPOINT.

repeated string commands = 2;

Returns
Type Description
int

The count of commands.

getCommandsList()

public abstract List<String> getCommandsList()

Overrides the CMD specified in the container. If there is an ENTRYPOINT (either in the container image or with the entrypoint field below) then commands are appended as arguments to the ENTRYPOINT.

repeated string commands = 2;

Returns
Type Description
List<String>

A list containing the commands.

getEnableImageStreaming()

public abstract boolean getEnableImageStreaming()

Optional. If set to true, this container runnable uses Image streaming.

Use Image streaming to allow the runnable to initialize without waiting for the entire container image to download, which can significantly reduce startup time for large container images.

When enableImageStreaming is set to true, the container runtime is containerd instead of Docker. Additionally, this container runnable only supports the following container subfields: imageUri, commands[], entrypoint, and volumes[]; any other container subfields are ignored.

For more information about the requirements and limitations for using Image streaming with Batch, see the image-streaming sample on GitHub.

bool enable_image_streaming = 12 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
boolean

The enableImageStreaming.

getEntrypoint()

public abstract String getEntrypoint()

Overrides the ENTRYPOINT specified in the container.

string entrypoint = 3;

Returns
Type Description
String

The entrypoint.

getEntrypointBytes()

public abstract ByteString getEntrypointBytes()

Overrides the ENTRYPOINT specified in the container.

string entrypoint = 3;

Returns
Type Description
ByteString

The bytes for entrypoint.

getImageUri()

public abstract String getImageUri()

The URI to pull the container image from.

string image_uri = 1;

Returns
Type Description
String

The imageUri.

getImageUriBytes()

public abstract ByteString getImageUriBytes()

The URI to pull the container image from.

string image_uri = 1;

Returns
Type Description
ByteString

The bytes for imageUri.

getOptions()

public abstract String getOptions()

Arbitrary additional options to include in the "docker run" command when running this container, e.g. "--network host".

string options = 8;

Returns
Type Description
String

The options.

getOptionsBytes()

public abstract ByteString getOptionsBytes()

Arbitrary additional options to include in the "docker run" command when running this container, e.g. "--network host".

string options = 8;

Returns
Type Description
ByteString

The bytes for options.

getPassword()

public abstract String getPassword()

Required if the container image is from a private Docker registry. The password to login to the Docker registry that contains the image.

For security, it is strongly recommended to specify an encrypted password by using a Secret Manager secret: projects/*/secrets/*/versions/*.

Warning: If you specify the password using plain text, you risk the password being exposed to any users who can view the job or its logs. To avoid this risk, specify a secret that contains the password instead.

Learn more about Secret Manager and using Secret Manager with Batch.

string password = 11;

Returns
Type Description
String

The password.

getPasswordBytes()

public abstract ByteString getPasswordBytes()

Required if the container image is from a private Docker registry. The password to login to the Docker registry that contains the image.

For security, it is strongly recommended to specify an encrypted password by using a Secret Manager secret: projects/*/secrets/*/versions/*.

Warning: If you specify the password using plain text, you risk the password being exposed to any users who can view the job or its logs. To avoid this risk, specify a secret that contains the password instead.

Learn more about Secret Manager and using Secret Manager with Batch.

string password = 11;

Returns
Type Description
ByteString

The bytes for password.

getUsername()

public abstract String getUsername()

Required if the container image is from a private Docker registry. The username to login to the Docker registry that contains the image.

You can either specify the username directly by using plain text or specify an encrypted username by using a Secret Manager secret: projects/*/secrets/*/versions/*. However, using a secret is recommended for enhanced security.

Caution: If you specify the username using plain text, you risk the username being exposed to any users who can view the job or its logs. To avoid this risk, specify a secret that contains the username instead.

Learn more about Secret Manager and using Secret Manager with Batch.

string username = 10;

Returns
Type Description
String

The username.

getUsernameBytes()

public abstract ByteString getUsernameBytes()

Required if the container image is from a private Docker registry. The username to login to the Docker registry that contains the image.

You can either specify the username directly by using plain text or specify an encrypted username by using a Secret Manager secret: projects/*/secrets/*/versions/*. However, using a secret is recommended for enhanced security.

Caution: If you specify the username using plain text, you risk the username being exposed to any users who can view the job or its logs. To avoid this risk, specify a secret that contains the username instead.

Learn more about Secret Manager and using Secret Manager with Batch.

string username = 10;

Returns
Type Description
ByteString

The bytes for username.

getVolumes(int index)

public abstract String getVolumes(int index)

Volumes to mount (bind mount) from the host machine files or directories into the container, formatted to match docker run's --volume option, e.g. /foo:/bar, or /foo:/bar:ro

If the TaskSpec.Volumes field is specified but this field is not, Batch will mount each volume from the host machine to the container with the same mount path by default. In this case, the default mount option for containers will be read-only (ro) for existing persistent disks and read-write (rw) for other volume types, regardless of the original mount options specified in TaskSpec.Volumes. If you need different mount settings, you can explicitly configure them in this field.

repeated string volumes = 7;

Parameter
Name Description
index int

The index of the element to return.

Returns
Type Description
String

The volumes at the given index.

getVolumesBytes(int index)

public abstract ByteString getVolumesBytes(int index)

Volumes to mount (bind mount) from the host machine files or directories into the container, formatted to match docker run's --volume option, e.g. /foo:/bar, or /foo:/bar:ro

If the TaskSpec.Volumes field is specified but this field is not, Batch will mount each volume from the host machine to the container with the same mount path by default. In this case, the default mount option for containers will be read-only (ro) for existing persistent disks and read-write (rw) for other volume types, regardless of the original mount options specified in TaskSpec.Volumes. If you need different mount settings, you can explicitly configure them in this field.

repeated string volumes = 7;

Parameter
Name Description
index int

The index of the value to return.

Returns
Type Description
ByteString

The bytes of the volumes at the given index.

getVolumesCount()

public abstract int getVolumesCount()

Volumes to mount (bind mount) from the host machine files or directories into the container, formatted to match docker run's --volume option, e.g. /foo:/bar, or /foo:/bar:ro

If the TaskSpec.Volumes field is specified but this field is not, Batch will mount each volume from the host machine to the container with the same mount path by default. In this case, the default mount option for containers will be read-only (ro) for existing persistent disks and read-write (rw) for other volume types, regardless of the original mount options specified in TaskSpec.Volumes. If you need different mount settings, you can explicitly configure them in this field.

repeated string volumes = 7;

Returns
Type Description
int

The count of volumes.

getVolumesList()

public abstract List<String> getVolumesList()

Volumes to mount (bind mount) from the host machine files or directories into the container, formatted to match docker run's --volume option, e.g. /foo:/bar, or /foo:/bar:ro

If the TaskSpec.Volumes field is specified but this field is not, Batch will mount each volume from the host machine to the container with the same mount path by default. In this case, the default mount option for containers will be read-only (ro) for existing persistent disks and read-write (rw) for other volume types, regardless of the original mount options specified in TaskSpec.Volumes. If you need different mount settings, you can explicitly configure them in this field.

repeated string volumes = 7;

Returns
Type Description
List<String>

A list containing the volumes.