Class EphemeralContainer
- java.lang.Object
-
- io.fabric8.kubernetes.api.model.EphemeralContainer
-
- All Implemented Interfaces:
io.fabric8.kubernetes.api.builder.Editable<EphemeralContainerBuilder>,KubernetesResource,Serializable
@Generated("io.fabric8.kubernetes.schema.generator.model.ModelGenerator") public class EphemeralContainer extends Object implements io.fabric8.kubernetes.api.builder.Editable<EphemeralContainerBuilder>, KubernetesResource
An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.To add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description EphemeralContainer()No args constructor for use in serializationEphemeralContainer(List<String> args, List<String> command, List<EnvVar> env, List<EnvFromSource> envFrom, String image, String imagePullPolicy, Lifecycle lifecycle, Probe livenessProbe, String name, List<ContainerPort> ports, Probe readinessProbe, List<ContainerResizePolicy> resizePolicy, ResourceRequirements resources, String restartPolicy, List<ContainerRestartRule> restartPolicyRules, SecurityContext securityContext, Probe startupProbe, Boolean stdin, Boolean stdinOnce, String targetContainerName, String terminationMessagePath, String terminationMessagePolicy, Boolean tty, List<VolumeDevice> volumeDevices, List<VolumeMount> volumeMounts, String workingDir)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description EphemeralContainerBuilderedit()Map<String,Object>getAdditionalProperties()List<String>getArgs()Arguments to the entrypoint.List<String>getCommand()Entrypoint array.List<EnvVar>getEnv()List of environment variables to set in the container.List<EnvFromSource>getEnvFrom()List of sources to populate environment variables in the container.StringgetImage()Container image name.StringgetImagePullPolicy()Image pull policy.LifecyclegetLifecycle()An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging.ProbegetLivenessProbe()An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging.StringgetName()Name of the ephemeral container specified as a DNS_LABEL.List<ContainerPort>getPorts()Ports are not allowed for ephemeral containers.ProbegetReadinessProbe()An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging.List<ContainerResizePolicy>getResizePolicy()Resources resize policy for the container.ResourceRequirementsgetResources()An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging.StringgetRestartPolicy()Restart policy for the container to manage the restart behavior of each container within a pod.List<ContainerRestartRule>getRestartPolicyRules()Represents a list of rules to be checked to determine if the container should be restarted on exit.SecurityContextgetSecurityContext()An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging.ProbegetStartupProbe()An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging.BooleangetStdin()Whether this container should allocate a buffer for stdin in the container runtime.BooleangetStdinOnce()Whether the container runtime should close the stdin channel after it has been opened by a single attach.StringgetTargetContainerName()If set, the name of the container from PodSpec that this ephemeral container targets.StringgetTerminationMessagePath()Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem.StringgetTerminationMessagePolicy()Indicate how the termination message should be populated.BooleangetTty()Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.List<VolumeDevice>getVolumeDevices()volumeDevices is the list of block devices to be used by the container.List<VolumeMount>getVolumeMounts()Pod volumes to mount into the container's filesystem.StringgetWorkingDir()Container's working directory.voidsetAdditionalProperties(Map<String,Object> additionalProperties)voidsetAdditionalProperty(String name, Object value)voidsetArgs(List<String> args)Arguments to the entrypoint.voidsetCommand(List<String> command)Entrypoint array.voidsetEnv(List<EnvVar> env)List of environment variables to set in the container.voidsetEnvFrom(List<EnvFromSource> envFrom)List of sources to populate environment variables in the container.voidsetImage(String image)Container image name.voidsetImagePullPolicy(String imagePullPolicy)Image pull policy.voidsetLifecycle(Lifecycle lifecycle)An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging.voidsetLivenessProbe(Probe livenessProbe)An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging.voidsetName(String name)Name of the ephemeral container specified as a DNS_LABEL.voidsetPorts(List<ContainerPort> ports)Ports are not allowed for ephemeral containers.voidsetReadinessProbe(Probe readinessProbe)An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging.voidsetResizePolicy(List<ContainerResizePolicy> resizePolicy)Resources resize policy for the container.voidsetResources(ResourceRequirements resources)An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging.voidsetRestartPolicy(String restartPolicy)Restart policy for the container to manage the restart behavior of each container within a pod.voidsetRestartPolicyRules(List<ContainerRestartRule> restartPolicyRules)Represents a list of rules to be checked to determine if the container should be restarted on exit.voidsetSecurityContext(SecurityContext securityContext)An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging.voidsetStartupProbe(Probe startupProbe)An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging.voidsetStdin(Boolean stdin)Whether this container should allocate a buffer for stdin in the container runtime.voidsetStdinOnce(Boolean stdinOnce)Whether the container runtime should close the stdin channel after it has been opened by a single attach.voidsetTargetContainerName(String targetContainerName)If set, the name of the container from PodSpec that this ephemeral container targets.voidsetTerminationMessagePath(String terminationMessagePath)Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem.voidsetTerminationMessagePolicy(String terminationMessagePolicy)Indicate how the termination message should be populated.voidsetTty(Boolean tty)Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.voidsetVolumeDevices(List<VolumeDevice> volumeDevices)volumeDevices is the list of block devices to be used by the container.voidsetVolumeMounts(List<VolumeMount> volumeMounts)Pod volumes to mount into the container's filesystem.voidsetWorkingDir(String workingDir)Container's working directory.EphemeralContainerBuildertoBuilder()
-
-
-
Constructor Detail
-
EphemeralContainer
public EphemeralContainer()
No args constructor for use in serialization
-
EphemeralContainer
public EphemeralContainer(List<String> args, List<String> command, List<EnvVar> env, List<EnvFromSource> envFrom, String image, String imagePullPolicy, Lifecycle lifecycle, Probe livenessProbe, String name, List<ContainerPort> ports, Probe readinessProbe, List<ContainerResizePolicy> resizePolicy, ResourceRequirements resources, String restartPolicy, List<ContainerRestartRule> restartPolicyRules, SecurityContext securityContext, Probe startupProbe, Boolean stdin, Boolean stdinOnce, String targetContainerName, String terminationMessagePath, String terminationMessagePolicy, Boolean tty, List<VolumeDevice> volumeDevices, List<VolumeMount> volumeMounts, String workingDir)
-
-
Method Detail
-
getArgs
public List<String> getArgs()
Arguments to the entrypoint. The image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
-
setArgs
public void setArgs(List<String> args)
Arguments to the entrypoint. The image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
-
getCommand
public List<String> getCommand()
Entrypoint array. Not executed within a shell. The image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
-
setCommand
public void setCommand(List<String> command)
Entrypoint array. Not executed within a shell. The image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
-
getEnv
public List<EnvVar> getEnv()
List of environment variables to set in the container. Cannot be updated.
-
setEnv
public void setEnv(List<EnvVar> env)
List of environment variables to set in the container. Cannot be updated.
-
getEnvFrom
public List<EnvFromSource> getEnvFrom()
List of sources to populate environment variables in the container. The keys defined within a source may consist of any printable ASCII characters except '='. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated.
-
setEnvFrom
public void setEnvFrom(List<EnvFromSource> envFrom)
List of sources to populate environment variables in the container. The keys defined within a source may consist of any printable ASCII characters except '='. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated.
-
getImage
public String getImage()
Container image name. More info: https://kubernetes.io/docs/concepts/containers/images
-
setImage
public void setImage(String image)
Container image name. More info: https://kubernetes.io/docs/concepts/containers/images
-
getImagePullPolicy
public String getImagePullPolicy()
Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
-
setImagePullPolicy
public void setImagePullPolicy(String imagePullPolicy)
Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
-
getLifecycle
public Lifecycle getLifecycle()
An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.To add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.
-
setLifecycle
public void setLifecycle(Lifecycle lifecycle)
An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.To add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.
-
getLivenessProbe
public Probe getLivenessProbe()
An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.To add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.
-
setLivenessProbe
public void setLivenessProbe(Probe livenessProbe)
An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.To add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.
-
getName
public String getName()
Name of the ephemeral container specified as a DNS_LABEL. This name must be unique among all containers, init containers and ephemeral containers.
-
setName
public void setName(String name)
Name of the ephemeral container specified as a DNS_LABEL. This name must be unique among all containers, init containers and ephemeral containers.
-
getPorts
public List<ContainerPort> getPorts()
Ports are not allowed for ephemeral containers.
-
setPorts
public void setPorts(List<ContainerPort> ports)
Ports are not allowed for ephemeral containers.
-
getReadinessProbe
public Probe getReadinessProbe()
An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.To add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.
-
setReadinessProbe
public void setReadinessProbe(Probe readinessProbe)
An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.To add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.
-
getResizePolicy
public List<ContainerResizePolicy> getResizePolicy()
Resources resize policy for the container.
-
setResizePolicy
public void setResizePolicy(List<ContainerResizePolicy> resizePolicy)
Resources resize policy for the container.
-
getResources
public ResourceRequirements getResources()
An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.To add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.
-
setResources
public void setResources(ResourceRequirements resources)
An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.To add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.
-
getRestartPolicy
public String getRestartPolicy()
Restart policy for the container to manage the restart behavior of each container within a pod. You cannot set this field on ephemeral containers.
-
setRestartPolicy
public void setRestartPolicy(String restartPolicy)
Restart policy for the container to manage the restart behavior of each container within a pod. You cannot set this field on ephemeral containers.
-
getRestartPolicyRules
public List<ContainerRestartRule> getRestartPolicyRules()
Represents a list of rules to be checked to determine if the container should be restarted on exit. You cannot set this field on ephemeral containers.
-
setRestartPolicyRules
public void setRestartPolicyRules(List<ContainerRestartRule> restartPolicyRules)
Represents a list of rules to be checked to determine if the container should be restarted on exit. You cannot set this field on ephemeral containers.
-
getSecurityContext
public SecurityContext getSecurityContext()
An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.To add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.
-
setSecurityContext
public void setSecurityContext(SecurityContext securityContext)
An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.To add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.
-
getStartupProbe
public Probe getStartupProbe()
An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.To add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.
-
setStartupProbe
public void setStartupProbe(Probe startupProbe)
An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.To add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.
-
getStdin
public Boolean getStdin()
Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false.
-
setStdin
public void setStdin(Boolean stdin)
Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false.
-
getStdinOnce
public Boolean getStdinOnce()
Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false
-
setStdinOnce
public void setStdinOnce(Boolean stdinOnce)
Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false
-
getTargetContainerName
public String getTargetContainerName()
If set, the name of the container from PodSpec that this ephemeral container targets. The ephemeral container will be run in the namespaces (IPC, PID, etc) of this container. If not set then the ephemeral container uses the namespaces configured in the Pod spec.The container runtime must implement support for this feature. If the runtime does not support namespace targeting then the result of setting this field is undefined.
-
setTargetContainerName
public void setTargetContainerName(String targetContainerName)
If set, the name of the container from PodSpec that this ephemeral container targets. The ephemeral container will be run in the namespaces (IPC, PID, etc) of this container. If not set then the ephemeral container uses the namespaces configured in the Pod spec.The container runtime must implement support for this feature. If the runtime does not support namespace targeting then the result of setting this field is undefined.
-
getTerminationMessagePath
public String getTerminationMessagePath()
Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated.
-
setTerminationMessagePath
public void setTerminationMessagePath(String terminationMessagePath)
Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated.
-
getTerminationMessagePolicy
public String getTerminationMessagePolicy()
Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
-
setTerminationMessagePolicy
public void setTerminationMessagePolicy(String terminationMessagePolicy)
Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
-
getTty
public Boolean getTty()
Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false.
-
setTty
public void setTty(Boolean tty)
Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false.
-
getVolumeDevices
public List<VolumeDevice> getVolumeDevices()
volumeDevices is the list of block devices to be used by the container.
-
setVolumeDevices
public void setVolumeDevices(List<VolumeDevice> volumeDevices)
volumeDevices is the list of block devices to be used by the container.
-
getVolumeMounts
public List<VolumeMount> getVolumeMounts()
Pod volumes to mount into the container's filesystem. Subpath mounts are not allowed for ephemeral containers. Cannot be updated.
-
setVolumeMounts
public void setVolumeMounts(List<VolumeMount> volumeMounts)
Pod volumes to mount into the container's filesystem. Subpath mounts are not allowed for ephemeral containers. Cannot be updated.
-
getWorkingDir
public String getWorkingDir()
Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated.
-
setWorkingDir
public void setWorkingDir(String workingDir)
Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated.
-
edit
public EphemeralContainerBuilder edit()
- Specified by:
editin interfaceio.fabric8.kubernetes.api.builder.Editable<EphemeralContainerBuilder>
-
toBuilder
public EphemeralContainerBuilder toBuilder()
-
-