pub struct UpdateContainerOptions<T>
where T: Into<String> + Eq + Hash,
{
Show 33 fields pub cpu_shares: Option<isize>, pub memory: Option<i64>, pub cgroup_parent: Option<T>, pub blkio_weight: Option<u16>, pub blkio_weight_device: Option<Vec<ResourcesBlkioWeightDevice>>, pub blkio_device_read_bps: Option<Vec<ThrottleDevice>>, pub blkio_device_write_bps: Option<Vec<ThrottleDevice>>, pub blkio_device_read_i_ops: Option<Vec<ThrottleDevice>>, pub blkio_device_write_i_ops: Option<Vec<ThrottleDevice>>, pub cpu_period: Option<i64>, pub cpu_quota: Option<i64>, pub cpu_realtime_period: Option<i64>, pub cpu_realtime_runtime: Option<i64>, pub cpuset_cpus: Option<T>, pub cpuset_mems: Option<T>, pub devices: Option<Vec<DeviceMapping>>, pub device_cgroup_rules: Option<Vec<T>>, pub device_requests: Option<Vec<DeviceRequest>>, pub kernel_memory: Option<i64>, pub kernel_memory_tcp: Option<i64>, pub memory_reservation: Option<i64>, pub memory_swap: Option<i64>, pub memory_swappiness: Option<i64>, pub nano_cp_us: Option<i64>, pub oom_kill_disable: Option<bool>, pub init: Option<bool>, pub pids_limit: Option<i64>, pub ulimits: Option<Vec<ResourcesUlimits>>, pub cpu_count: Option<i64>, pub cpu_percent: Option<i64>, pub io_maximum_i_ops: Option<i64>, pub io_maximum_bandwidth: Option<i64>, pub restart_policy: Option<RestartPolicy>,
}
Expand description

Configuration for the Update Container API

§Examples

use bollard::container::UpdateContainerOptions;
use std::default::Default;

UpdateContainerOptions::<String> {
    memory: Some(314572800),
    memory_swap: Some(314572800),
    ..Default::default()
};

Fields§

§cpu_shares: Option<isize>

An integer value representing this container’s relative CPU weight versus other containers.

§memory: Option<i64>

Memory limit in bytes.

§cgroup_parent: Option<T>

Path to cgroups under which the container’s cgroup is created. If the path is not absolute, the path is considered to be relative to the cgroups path of the init process. Cgroups are created if they do not already exist.

§blkio_weight: Option<u16>

Block IO weight (relative weight).

§blkio_weight_device: Option<Vec<ResourcesBlkioWeightDevice>>

Block IO weight (relative device weight) in the form [{\"Path\": \"device_path\", \"Weight\": weight}].

§blkio_device_read_bps: Option<Vec<ThrottleDevice>>

Limit read rate (bytes per second) from a device, in the form [{\"Path\": \"device_path\", \"Rate\": rate}].

§blkio_device_write_bps: Option<Vec<ThrottleDevice>>

Limit write rate (bytes per second) to a device, in the form [{\"Path\": \"device_path\", \"Rate\": rate}].

§blkio_device_read_i_ops: Option<Vec<ThrottleDevice>>

Limit read rate (IO per second) from a device, in the form [{\"Path\": \"device_path\", \"Rate\": rate}].

§blkio_device_write_i_ops: Option<Vec<ThrottleDevice>>

Limit write rate (IO per second) to a device, in the form [{\"Path\": \"device_path\", \"Rate\": rate}].

§cpu_period: Option<i64>

The length of a CPU period in microseconds.

§cpu_quota: Option<i64>

Microseconds of CPU time that the container can get in a CPU period.

§cpu_realtime_period: Option<i64>

The length of a CPU real-time period in microseconds. Set to 0 to allocate no time allocated to real-time tasks.

§cpu_realtime_runtime: Option<i64>

The length of a CPU real-time runtime in microseconds. Set to 0 to allocate no time allocated to real-time tasks.

§cpuset_cpus: Option<T>

CPUs in which to allow execution (e.g., 0-3, 0,1)

§cpuset_mems: Option<T>

Memory nodes (MEMs) in which to allow execution (0-3, 0,1). Only effective on NUMA systems.

§devices: Option<Vec<DeviceMapping>>

A list of devices to add to the container.

§device_cgroup_rules: Option<Vec<T>>

a list of cgroup rules to apply to the container

§device_requests: Option<Vec<DeviceRequest>>

a list of requests for devices to be sent to device drivers

§kernel_memory: Option<i64>

Kernel memory limit in bytes.

§kernel_memory_tcp: Option<i64>

Hard limit for kernel TCP buffer memory (in bytes).

§memory_reservation: Option<i64>

Memory soft limit in bytes.

§memory_swap: Option<i64>

Total memory limit (memory + swap). Set as -1 to enable unlimited swap.

§memory_swappiness: Option<i64>

Tune a container’s memory swappiness behavior. Accepts an integer between 0 and 100.

§nano_cp_us: Option<i64>

CPU quota in units of 10-9 CPUs.

§oom_kill_disable: Option<bool>

Disable OOM Killer for the container.

§init: Option<bool>

Run an init inside the container that forwards signals and reaps processes. This field is omitted if empty, and the default (as configured on the daemon) is used.

§pids_limit: Option<i64>

Tune a container’s PIDs limit. Set 0 or -1 for unlimited, or null to not change.

§ulimits: Option<Vec<ResourcesUlimits>>

A list of resource limits to set in the container. For example: {\"Name\": \"nofile\", \"Soft\": 1024, \"Hard\": 2048}"

§cpu_count: Option<i64>

The number of usable CPUs (Windows only). On Windows Server containers, the processor resource controls are mutually exclusive. The order of precedence is CPUCount first, then CPUShares, and CPUPercent last.

§cpu_percent: Option<i64>

The usable percentage of the available CPUs (Windows only). On Windows Server containers, the processor resource controls are mutually exclusive. The order of precedence is CPUCount first, then CPUShares, and CPUPercent last.

§io_maximum_i_ops: Option<i64>

Maximum IOps for the container system drive (Windows only)

§io_maximum_bandwidth: Option<i64>

Maximum IO in bytes per second for the container system drive (Windows only)

§restart_policy: Option<RestartPolicy>

The behavior to apply when the container exits. The default is not to restart.

An ever increasing delay (double the previous delay, starting at 100ms) is added before each restart to prevent flooding the server.

Trait Implementations§

source§

impl<T> Clone for UpdateContainerOptions<T>
where T: Into<String> + Eq + Hash + Clone,

source§

fn clone(&self) -> UpdateContainerOptions<T>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<T> Debug for UpdateContainerOptions<T>
where T: Into<String> + Eq + Hash + Debug,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<T> Default for UpdateContainerOptions<T>
where T: Into<String> + Eq + Hash + Default,

source§

fn default() -> UpdateContainerOptions<T>

Returns the “default value” for a type. Read more
source§

impl<T> PartialEq for UpdateContainerOptions<T>
where T: Into<String> + Eq + Hash + PartialEq,

source§

fn eq(&self, other: &UpdateContainerOptions<T>) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl<T> Serialize for UpdateContainerOptions<T>
where T: Into<String> + Eq + Hash + Serialize,

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl<T> StructuralPartialEq for UpdateContainerOptions<T>
where T: Into<String> + Eq + Hash,

Auto Trait Implementations§

§

impl<T> Freeze for UpdateContainerOptions<T>
where T: Freeze,

§

impl<T> RefUnwindSafe for UpdateContainerOptions<T>
where T: RefUnwindSafe,

§

impl<T> Send for UpdateContainerOptions<T>
where T: Send,

§

impl<T> Sync for UpdateContainerOptions<T>
where T: Sync,

§

impl<T> Unpin for UpdateContainerOptions<T>
where T: Unpin,

§

impl<T> UnwindSafe for UpdateContainerOptions<T>
where T: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more