pub struct PodSandboxConfig {
pub metadata: Option<PodSandboxMetadata>,
pub hostname: String,
pub log_directory: String,
pub dns_config: Option<DnsConfig>,
pub port_mappings: Vec<PortMapping>,
pub labels: HashMap<String, String>,
pub annotations: HashMap<String, String>,
pub linux: Option<LinuxPodSandboxConfig>,
pub windows: Option<WindowsPodSandboxConfig>,
}Expand description
PodSandboxConfig holds all the required and optional fields for creating a sandbox.
Fields§
§metadata: Option<PodSandboxMetadata>Metadata of the sandbox. This information will uniquely identify the sandbox, and the runtime should leverage this to ensure correct operation. The runtime may also use this information to improve UX, such as by constructing a readable name.
hostname: StringHostname of the sandbox. Hostname could only be empty when the pod network namespace is NODE.
log_directory: StringPath to the directory on the host in which container log files are
stored.
By default the log of a container going into the LogDirectory will be
hooked up to STDOUT and STDERR. However, the LogDirectory may contain
binary log files with structured logging data from the individual
containers. For example, the files might be newline separated JSON
structured logs, systemd-journald journal files, gRPC trace files, etc.
E.g.,
PodSandboxConfig.LogDirectory = /var/log/pods/<podUID>/
ContainerConfig.LogPath = containerName/Instance#.log
dns_config: Option<DnsConfig>DNS config for the sandbox.
port_mappings: Vec<PortMapping>Port mappings for the sandbox.
labels: HashMap<String, String>Key-value pairs that may be used to scope and select individual resources.
annotations: HashMap<String, String>Unstructured key-value map that may be set by the kubelet to store and retrieve arbitrary metadata. This will include any annotations set on a pod through the Kubernetes API.
Annotations MUST NOT be altered by the runtime; the annotations stored here MUST be returned in the PodSandboxStatus associated with the pod this PodSandboxConfig creates.
In general, in order to preserve a well-defined interface between the kubelet and the container runtime, annotations SHOULD NOT influence runtime behaviour.
Annotations can also be useful for runtime authors to experiment with new features that are opaque to the Kubernetes APIs (both user-facing and the CRI). Whenever possible, however, runtime authors SHOULD consider proposing new typed fields for any new features instead.
linux: Option<LinuxPodSandboxConfig>Optional configurations specific to Linux hosts.
windows: Option<WindowsPodSandboxConfig>Optional configurations specific to Windows hosts.
Trait Implementations§
Source§impl Clone for PodSandboxConfig
impl Clone for PodSandboxConfig
Source§fn clone(&self) -> PodSandboxConfig
fn clone(&self) -> PodSandboxConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PodSandboxConfig
impl Debug for PodSandboxConfig
Source§impl Default for PodSandboxConfig
impl Default for PodSandboxConfig
Source§impl<'de> Deserialize<'de> for PodSandboxConfig
impl<'de> Deserialize<'de> for PodSandboxConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Message for PodSandboxConfig
impl Message for PodSandboxConfig
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode<B>(buf: B) -> Result<Self, DecodeError>
fn decode<B>(buf: B) -> Result<Self, DecodeError>
Source§fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
Source§fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
self. Read moreSource§fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
self.Source§impl PartialEq for PodSandboxConfig
impl PartialEq for PodSandboxConfig
Source§impl Serialize for PodSandboxConfig
impl Serialize for PodSandboxConfig
impl StructuralPartialEq for PodSandboxConfig
Auto Trait Implementations§
impl Freeze for PodSandboxConfig
impl RefUnwindSafe for PodSandboxConfig
impl Send for PodSandboxConfig
impl Sync for PodSandboxConfig
impl Unpin for PodSandboxConfig
impl UnwindSafe for PodSandboxConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request