com.github.dockerjava.api.model.HostConfig Maven / Gradle / Ivy
package com.github.dockerjava.api.model;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import javax.annotation.CheckForNull;
import java.io.Serializable;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import static java.util.Objects.requireNonNull;
/**
* Used in `/containers/create`, and in inspect container.
* TODO exclude usage for 2 different models.
*/
@EqualsAndHashCode
@ToString
public class HostConfig extends DockerObject implements Serializable {
private static final long serialVersionUID = 1L;
private static final List PREDEFINED_NETWORKS = Arrays.asList("bridge", "host", "none");
public static HostConfig newHostConfig() {
return new HostConfig();
}
@JsonProperty("Binds")
private Binds binds;
@JsonProperty("BlkioWeight")
private Integer blkioWeight;
/**
* @since {@link com.github.dockerjava.core.RemoteApiVersion#VERSION_1_22}
*/
@JsonProperty("BlkioWeightDevice")
private List blkioWeightDevice;
/**
* @since {@link com.github.dockerjava.core.RemoteApiVersion#VERSION_1_22}
*/
@JsonProperty("BlkioDeviceReadBps")
private List blkioDeviceReadBps;
/**
* @since {@link com.github.dockerjava.core.RemoteApiVersion#VERSION_1_22}
*/
@JsonProperty("BlkioDeviceWriteBps")
private List blkioDeviceWriteBps;
/**
* @since {@link com.github.dockerjava.core.RemoteApiVersion#VERSION_1_22}
*/
@JsonProperty("BlkioDeviceReadIOps")
private List blkioDeviceReadIOps;
/**
* @since {@link com.github.dockerjava.core.RemoteApiVersion#VERSION_1_22}
*/
@JsonProperty("BlkioDeviceWriteIOps")
private List blkioDeviceWriteIOps;
/**
* @since {@link com.github.dockerjava.core.RemoteApiVersion#VERSION_1_20}
*/
@JsonProperty("MemorySwappiness")
private Long memorySwappiness;
@JsonProperty("NanoCpus")
private Long nanoCPUs;
@JsonProperty("CapAdd")
private Capability[] capAdd;
@JsonProperty("CapDrop")
private Capability[] capDrop;
@JsonProperty("ContainerIDFile")
private String containerIDFile;
@JsonProperty("CpuPeriod")
private Long cpuPeriod;
@JsonProperty("CpuRealtimePeriod")
private Long cpuRealtimePeriod;
@JsonProperty("CpuRealtimeRuntime")
private Long cpuRealtimeRuntime;
@JsonProperty("CpuShares")
private Integer cpuShares;
/**
* @since ~{@link RemoteApiVersion#VERSION_1_20}
*/
@JsonProperty("CpuQuota")
private Long cpuQuota;
@JsonProperty("CpusetCpus")
private String cpusetCpus;
@JsonProperty("CpusetMems")
private String cpusetMems;
@JsonProperty("Devices")
private Device[] devices;
@JsonProperty("DeviceCgroupRules")
private List deviceCgroupRules;
/**
* @since {@link com.github.dockerjava.core.RemoteApiVersion#VERSION_1_40}
*/
@JsonProperty("DeviceRequests")
private List deviceRequests;
/**
* @since {@link RemoteApiVersion#VERSION_1_25}
*/
@JsonProperty("DiskQuota")
private Long diskQuota;
@JsonProperty("Dns")
private String[] dns;
@JsonProperty("DnsOptions")
private List dnsOptions;
@JsonProperty("DnsSearch")
private String[] dnsSearch;
@JsonProperty("ExtraHosts")
private String[] extraHosts;
@JsonProperty("GroupAdd")
private List groupAdd;
@JsonProperty("IpcMode")
private String ipcMode;
@JsonProperty("Cgroup")
private String cgroup;
@JsonProperty("Links")
private Links links;
@JsonProperty("LogConfig")
private LogConfig logConfig;
@JsonProperty("LxcConf")
private LxcConf[] lxcConf;
@JsonProperty("Memory")
private Long memory;
@JsonProperty("MemorySwap")
private Long memorySwap;
/**
* @since {@link RemoteApiVersion#VERSION_1_21}
*/
@JsonProperty("MemoryReservation")
private Long memoryReservation;
/**
* @since {@link RemoteApiVersion#VERSION_1_21}
*/
@JsonProperty("KernelMemory")
private Long kernelMemory;
@JsonProperty("NetworkMode")
private String networkMode;
@JsonProperty("OomKillDisable")
private Boolean oomKillDisable;
@JsonProperty("Init")
private Boolean init;
/**
* @since {@link RemoteApiVersion#VERSION_1_25}
*/
@JsonProperty("AutoRemove")
private Boolean autoRemove;
/**
* @since {@link RemoteApiVersion#VERSION_1_22}
*/
@JsonProperty("OomScoreAdj")
private Integer oomScoreAdj;
@JsonProperty("PortBindings")
private Ports portBindings;
@JsonProperty("Privileged")
private Boolean privileged;
@JsonProperty("PublishAllPorts")
private Boolean publishAllPorts;
@JsonProperty("ReadonlyRootfs")
private Boolean readonlyRootfs;
@JsonProperty("RestartPolicy")
private RestartPolicy restartPolicy;
@JsonProperty("Ulimits")
private Ulimit[] ulimits;
@JsonProperty("CpuCount")
private Long cpuCount;
@JsonProperty("CpuPercent")
private Long cpuPercent;
@JsonProperty("IOMaximumIOps")
private Long ioMaximumIOps;
@JsonProperty("IOMaximumBandwidth")
private Long ioMaximumBandwidth;
@JsonProperty("VolumesFrom")
private VolumesFrom[] volumesFrom;
@JsonProperty("Mounts")
private List mounts;
@JsonProperty("PidMode")
private String pidMode;
@JsonProperty("Isolation")
private Isolation isolation;
/**
* @since {@link RemoteApiVersion#VERSION_1_20}
*/
@JsonProperty("SecurityOpt")
private List securityOpts;
@JsonProperty("StorageOpt")
private Map storageOpt;
/**
* @since {@link RemoteApiVersion#VERSION_1_20}
*/
@JsonProperty("CgroupParent")
private String cgroupParent;
/**
* @since {@link RemoteApiVersion#VERSION_1_21}
*/
@JsonProperty("VolumeDriver")
private String volumeDriver;
/**
* @since {@link RemoteApiVersion#VERSION_1_22}
*/
@JsonProperty("ShmSize")
private Long shmSize;
/**
* @since ~{@link RemoteApiVersion#VERSION_1_23}
*/
@JsonProperty("PidsLimit")
private Long pidsLimit;
/**
* @since ~{@link RemoteApiVersion#VERSION_1_30}
*/
@JsonProperty("Runtime")
private String runtime;
/**
* @since ~{@link RemoteApiVersion#VERSION_1_22}
*/
@JsonProperty("Tmpfs")
private Map tmpFs;
@JsonProperty("UTSMode")
private String utSMode;
@JsonProperty("UsernsMode")
private String usernsMode;
@JsonProperty("Sysctls")
private Map sysctls;
@JsonProperty("ConsoleSize")
private List consoleSize;
@JsonProperty("CgroupnsMode")
private String cgroupnsMode;
@JsonIgnore
public Bind[] getBinds() {
return (binds == null) ? new Bind[0] : binds.getBinds();
}
public Integer getBlkioWeight() {
return blkioWeight;
}
public Capability[] getCapAdd() {
return capAdd;
}
public Capability[] getCapDrop() {
return capDrop;
}
public String getContainerIDFile() {
return containerIDFile;
}
public Long getCpuPeriod() {
return cpuPeriod;
}
public Integer getCpuShares() {
return cpuShares;
}
public String getCpusetCpus() {
return cpusetCpus;
}
public String getCpusetMems() {
return cpusetMems;
}
public Device[] getDevices() {
return devices;
}
public Long getDiskQuota() {
return diskQuota;
}
public String[] getDns() {
return dns;
}
public String[] getDnsSearch() {
return dnsSearch;
}
public String[] getExtraHosts() {
return extraHosts;
}
@JsonIgnore
public Link[] getLinks() {
return (links == null) ? new Link[0] : links.getLinks();
}
@JsonIgnore
public LogConfig getLogConfig() {
return (logConfig == null) ? new LogConfig() : logConfig;
}
public LxcConf[] getLxcConf() {
return lxcConf;
}
public Long getMemory() {
return memory;
}
public Long getMemorySwap() {
return memorySwap;
}
public String getNetworkMode() {
return networkMode;
}
public Ports getPortBindings() {
return portBindings;
}
public RestartPolicy getRestartPolicy() {
return restartPolicy;
}
public Ulimit[] getUlimits() {
return ulimits;
}
public VolumesFrom[] getVolumesFrom() {
return volumesFrom;
}
@CheckForNull
public String getPidMode() {
return pidMode;
}
/**
* @see #blkioDeviceReadBps
*/
@CheckForNull
public List getBlkioDeviceReadBps() {
return blkioDeviceReadBps;
}
/**
* @see #blkioDeviceReadIOps
*/
@CheckForNull
public List getBlkioDeviceReadIOps() {
return blkioDeviceReadIOps;
}
/**
* @see #blkioDeviceWriteBps
*/
@CheckForNull
public List getBlkioDeviceWriteBps() {
return blkioDeviceWriteBps;
}
/**
* @see #blkioDeviceWriteIOps
*/
@CheckForNull
public List getBlkioDeviceWriteIOps() {
return blkioDeviceWriteIOps;
}
/**
* @see #blkioWeightDevice
*/
@CheckForNull
public List getBlkioWeightDevice() {
return blkioWeightDevice;
}
/**
* @see #oomScoreAdj
*/
@CheckForNull
public Integer getOomScoreAdj() {
return oomScoreAdj;
}
/**
* @see #cpuQuota
*/
@CheckForNull
public Long getCpuQuota() {
return cpuQuota;
}
/**
* @see #kernelMemory
*/
@CheckForNull
public Long getKernelMemory() {
return kernelMemory;
}
/**
* @see #memoryReservation
*/
@CheckForNull
public Long getMemoryReservation() {
return memoryReservation;
}
/**
* @see #memorySwappiness
*/
@CheckForNull
public Long getMemorySwappiness() {
return memorySwappiness;
}
/**
* @see #oomKillDisable
*/
@CheckForNull
public Boolean getOomKillDisable() {
return oomKillDisable;
}
/**
* @see #autoRemove
*/
@CheckForNull
public Boolean getAutoRemove() {
return autoRemove;
}
/**
* @see #securityOpts
*/
@CheckForNull
public List getSecurityOpts() {
return securityOpts;
}
/**
* @see #cgroupParent
*/
@CheckForNull
public String getCgroupParent() {
return cgroupParent;
}
/**
* @see #shmSize
*/
@CheckForNull
public Long getShmSize() {
return shmSize;
}
/**
* @see #volumeDriver
*/
@CheckForNull
public String getVolumeDriver() {
return volumeDriver;
}
/**
* @see #pidsLimit
*/
@CheckForNull
public Long getPidsLimit() {
return pidsLimit;
}
/**
* @see #tmpFs
*/
@CheckForNull
public Map getTmpFs() {
return tmpFs;
}
/**
* Parse the network mode as specified at
* {@see https://github.com/docker/engine-api/blob/master/types/container/hostconfig_unix.go}
*/
@JsonIgnore
public boolean isUserDefinedNetwork() {
return networkMode != null && !PREDEFINED_NETWORKS.contains(networkMode) && !networkMode.startsWith("container:");
}
public String getRuntime() {
return runtime;
}
@JsonIgnore
public void setBinds(Bind... binds) {
this.binds = new Binds(binds);
}
@JsonIgnore
public void setLinks(Link... links) {
this.links = new Links(links);
}
// auto-generated builder setters
/**
* @see #binds
*/
public HostConfig withBinds(Binds binds) {
this.binds = binds;
return this;
}
public HostConfig withBinds(Bind... binds) {
requireNonNull(binds, "binds was not specified");
setBinds(binds);
return this;
}
public HostConfig withBinds(List binds) {
requireNonNull(binds, "binds was not specified");
return withBinds(binds.toArray(new Bind[binds.size()]));
}
/**
* @see #blkioDeviceReadBps
*/
public HostConfig withBlkioDeviceReadBps(List blkioDeviceReadBps) {
this.blkioDeviceReadBps = blkioDeviceReadBps;
return this;
}
/**
* @see #blkioDeviceReadIOps
*/
public HostConfig withBlkioDeviceReadIOps(List blkioDeviceReadIOps) {
this.blkioDeviceReadIOps = blkioDeviceReadIOps;
return this;
}
/**
* @see #blkioDeviceWriteBps
*/
public HostConfig withBlkioDeviceWriteBps(List blkioDeviceWriteBps) {
this.blkioDeviceWriteBps = blkioDeviceWriteBps;
return this;
}
/**
* @see #blkioDeviceWriteIOps
*/
public HostConfig withBlkioDeviceWriteIOps(List blkioDeviceWriteIOps) {
this.blkioDeviceWriteIOps = blkioDeviceWriteIOps;
return this;
}
/**
* @see #blkioWeight
*/
public HostConfig withBlkioWeight(Integer blkioWeight) {
this.blkioWeight = blkioWeight;
return this;
}
/**
* @see #blkioWeightDevice
*/
public HostConfig withBlkioWeightDevice(List blkioWeightDevice) {
this.blkioWeightDevice = blkioWeightDevice;
return this;
}
/**
* @see #capAdd
*/
public HostConfig withCapAdd(Capability... capAdd) {
this.capAdd = capAdd;
return this;
}
/**
* @see #capDrop
*/
public HostConfig withCapDrop(Capability... capDrop) {
this.capDrop = capDrop;
return this;
}
/**
* @see #cgroupParent
*/
public HostConfig withCgroupParent(String cgroupParent) {
this.cgroupParent = cgroupParent;
return this;
}
/**
* @see #containerIDFile
*/
public HostConfig withContainerIDFile(String containerIDFile) {
this.containerIDFile = containerIDFile;
return this;
}
/**
* @see #cpuPeriod
*/
public HostConfig withCpuPeriod(Long cpuPeriod) {
this.cpuPeriod = cpuPeriod;
return this;
}
/**
* @see #cpuQuota
*/
public HostConfig withCpuQuota(Long cpuQuota) {
this.cpuQuota = cpuQuota;
return this;
}
/**
* @see #cpusetCpus
*/
public HostConfig withCpusetCpus(String cpusetCpus) {
this.cpusetCpus = cpusetCpus;
return this;
}
/**
* @see #cpusetMems
*/
public HostConfig withCpusetMems(String cpusetMems) {
this.cpusetMems = cpusetMems;
return this;
}
/**
* @see #cpuShares
*/
public HostConfig withCpuShares(Integer cpuShares) {
this.cpuShares = cpuShares;
return this;
}
/**
* @see #devices
*/
public HostConfig withDevices(Device... devices) {
this.devices = devices;
return this;
}
public HostConfig withDevices(List devices) {
requireNonNull(devices, "devices was not specified");
return withDevices(devices.toArray(new Device[0]));
}
/**
* @see #diskQuota
*/
public HostConfig withDiskQuota(Long diskQuota) {
this.diskQuota = diskQuota;
return this;
}
/**
* @see #dns
*/
public HostConfig withDns(String... dns) {
this.dns = dns;
return this;
}
public HostConfig withDns(List dns) {
requireNonNull(dns, "dns was not specified");
return withDns(dns.toArray(new String[0]));
}
/**
* @see #dnsSearch
*/
public HostConfig withDnsSearch(String... dnsSearch) {
this.dnsSearch = dnsSearch;
return this;
}
public HostConfig withDnsSearch(List dnsSearch) {
requireNonNull(dnsSearch, "dnsSearch was not specified");
return withDnsSearch(dnsSearch.toArray(new String[0]));
}
/**
* @see #extraHosts
*/
public HostConfig withExtraHosts(String... extraHosts) {
this.extraHosts = extraHosts;
return this;
}
/**
* @see #kernelMemory
*/
public HostConfig withKernelMemory(Long kernelMemory) {
this.kernelMemory = kernelMemory;
return this;
}
/**
* @see #links
*/
public HostConfig withLinks(Links links) {
this.links = links;
return this;
}
public HostConfig withLinks(Link... links) {
requireNonNull(links, "links was not specified");
setLinks(links);
return this;
}
public HostConfig withLinks(List links) {
requireNonNull(links, "links was not specified");
return withLinks(links.toArray(new Link[0]));
}
/**
* @see #logConfig
*/
public HostConfig withLogConfig(LogConfig logConfig) {
this.logConfig = logConfig;
return this;
}
/**
* @see #lxcConf
*/
public HostConfig withLxcConf(LxcConf[] lxcConf) {
this.lxcConf = lxcConf;
return this;
}
/**
* @see #memory
*/
public HostConfig withMemory(Long memory) {
this.memory = memory;
return this;
}
/**
* @see #memoryReservation
*/
public HostConfig withMemoryReservation(Long memoryReservation) {
this.memoryReservation = memoryReservation;
return this;
}
/**
* @see #memorySwap
*/
public HostConfig withMemorySwap(Long memorySwap) {
this.memorySwap = memorySwap;
return this;
}
/**
* @see #memorySwappiness
*/
public HostConfig withMemorySwappiness(Long memorySwappiness) {
this.memorySwappiness = memorySwappiness;
return this;
}
/**
* Set the Network mode for the container
*
* - 'bridge': creates a new network stack for the container on the docker bridge
* - 'none': no networking for this container
* - 'container:
': reuses another container network stack
* - 'host': use the host network stack inside the container. Note: the host mode gives the container full access to local system
* services such as D-bus and is therefore considered insecure.
*
* Any other value is interpreted as a custom network's name for this container to connect to.
*/
public HostConfig withNetworkMode(String networkMode) {
this.networkMode = networkMode;
return this;
}
/**
* @see #oomKillDisable
* @since 1.19
*/
public HostConfig withOomKillDisable(Boolean oomKillDisable) {
this.oomKillDisable = oomKillDisable;
return this;
}
/**
* @see #autoRemove
*/
public HostConfig withAutoRemove(Boolean autoRemove) {
this.autoRemove = autoRemove;
return this;
}
/**
* @see #oomScoreAdj
*/
public HostConfig withOomScoreAdj(Integer oomScoreAdj) {
this.oomScoreAdj = oomScoreAdj;
return this;
}
/**
* Set the PID (Process) Namespace mode for the container, 'host': use the host's PID namespace inside the container
*
* @see #pidMode
*/
public HostConfig withPidMode(String pidMode) {
this.pidMode = pidMode;
return this;
}
/**
* Add one or more {@link PortBinding}s. This corresponds to the --publish
(-p
) option of the
* docker run
CLI command.
*/
public HostConfig withPortBindings(Ports portBindings) {
this.portBindings = portBindings;
return this;
}
public HostConfig withPortBindings(PortBinding... portBindings) {
requireNonNull(portBindings, "portBindings was not specified");
withPortBindings(new Ports(portBindings));
return this;
}
public HostConfig withPortBindings(List portBindings) {
requireNonNull(portBindings, "portBindings was not specified");
return withPortBindings(portBindings.toArray(new PortBinding[0]));
}
/**
* @see #privileged
*/
@CheckForNull
public Boolean getPrivileged() {
return privileged;
}
/**
* @see #privileged
*/
public HostConfig withPrivileged(Boolean privileged) {
this.privileged = privileged;
return this;
}
/**
* @see #publishAllPorts
*/
@CheckForNull
public Boolean getPublishAllPorts() {
return publishAllPorts;
}
/**
* @see #publishAllPorts
*/
public HostConfig withPublishAllPorts(Boolean publishAllPorts) {
this.publishAllPorts = publishAllPorts;
return this;
}
/**
* @see #readonlyRootfs
*/
@CheckForNull
public Boolean getReadonlyRootfs() {
return readonlyRootfs;
}
/**
* @see #readonlyRootfs
*/
public HostConfig withReadonlyRootfs(Boolean readonlyRootfs) {
this.readonlyRootfs = readonlyRootfs;
return this;
}
/**
* Set custom {@link RestartPolicy} for the container. Defaults to {@link RestartPolicy#noRestart()}
*/
public HostConfig withRestartPolicy(RestartPolicy restartPolicy) {
this.restartPolicy = restartPolicy;
return this;
}
/**
* @see #securityOpts
*/
public HostConfig withSecurityOpts(List securityOpts) {
this.securityOpts = securityOpts;
return this;
}
/**
* @see #shmSize
*/
public HostConfig withShmSize(Long shmSize) {
this.shmSize = shmSize;
return this;
}
/**
* @see #ulimits
*/
public HostConfig withUlimits(Ulimit[] ulimits) {
this.ulimits = ulimits;
return this;
}
public HostConfig withUlimits(List ulimits) {
requireNonNull(ulimits, "no ulimits was specified");
return withUlimits(ulimits.toArray(new Ulimit[0]));
}
/**
* @see #volumeDriver
*/
public HostConfig withVolumeDriver(String volumeDriver) {
this.volumeDriver = volumeDriver;
return this;
}
/**
* @see #volumesFrom
*/
public HostConfig withVolumesFrom(VolumesFrom... volumesFrom) {
this.volumesFrom = volumesFrom;
return this;
}
public HostConfig withVolumesFrom(List volumesFrom) {
requireNonNull(volumesFrom, "volumesFrom was not specified");
return withVolumesFrom(volumesFrom.toArray(new VolumesFrom[0]));
}
/**
* @see #pidsLimit
*/
public HostConfig withPidsLimit(Long pidsLimit) {
this.pidsLimit = pidsLimit;
return this;
}
public HostConfig withRuntime(String runtime) {
this.runtime = runtime;
return this;
}
/**
* @see #tmpFs
*/
public HostConfig withTmpFs(Map tmpFs) {
this.tmpFs = tmpFs;
return this;
}
@CheckForNull
public List getDeviceCgroupRules() {
return deviceCgroupRules;
}
public HostConfig withDeviceCgroupRules(List deviceCgroupRules) {
this.deviceCgroupRules = deviceCgroupRules;
return this;
}
@CheckForNull
public List getDeviceRequests() {
return deviceRequests;
}
public HostConfig withDeviceRequests(List deviceRequests) {
this.deviceRequests = deviceRequests;
return this;
}
@CheckForNull
public Long getNanoCPUs() {
return nanoCPUs;
}
public HostConfig withNanoCPUs(Long nanoCPUs) {
this.nanoCPUs = nanoCPUs;
return this;
}
@CheckForNull
public Boolean getInit() {
return init;
}
public HostConfig withInit(Boolean init) {
this.init = init;
return this;
}
@CheckForNull
public Long getCpuCount() {
return cpuCount;
}
public HostConfig withCpuCount(Long cpuCount) {
this.cpuCount = cpuCount;
return this;
}
@CheckForNull
public Long getCpuPercent() {
return cpuPercent;
}
public HostConfig withCpuPercent(Long cpuPercent) {
this.cpuPercent = cpuPercent;
return this;
}
@CheckForNull
public Long getIoMaximumIOps() {
return ioMaximumIOps;
}
public HostConfig withIoMaximumIOps(Long ioMaximumIOps) {
this.ioMaximumIOps = ioMaximumIOps;
return this;
}
@CheckForNull
public Long getIoMaximumBandwidth() {
return ioMaximumBandwidth;
}
public HostConfig withIoMaximumBandwidth(Long ioMaximumBandwidth) {
this.ioMaximumBandwidth = ioMaximumBandwidth;
return this;
}
@CheckForNull
public List getMounts() {
return mounts;
}
public HostConfig withMounts(List mounts) {
this.mounts = mounts;
return this;
}
@CheckForNull
public List getDnsOptions() {
return dnsOptions;
}
public HostConfig withDnsOptions(List dnsOptions) {
this.dnsOptions = dnsOptions;
return this;
}
@CheckForNull
public List getGroupAdd() {
return groupAdd;
}
public HostConfig withGroupAdd(List groupAdd) {
this.groupAdd = groupAdd;
return this;
}
@CheckForNull
public String getIpcMode() {
return ipcMode;
}
public HostConfig withIpcMode(String ipcMode) {
this.ipcMode = ipcMode;
return this;
}
@CheckForNull
public String getCgroup() {
return cgroup;
}
public HostConfig withCgroup(String cgroup) {
this.cgroup = cgroup;
return this;
}
@CheckForNull
public Map getStorageOpt() {
return storageOpt;
}
public HostConfig withStorageOpt(Map storageOpt) {
this.storageOpt = storageOpt;
return this;
}
@CheckForNull
public String getUtSMode() {
return utSMode;
}
public HostConfig withUtSMode(String utSMode) {
this.utSMode = utSMode;
return this;
}
@CheckForNull
public String getUsernsMode() {
return usernsMode;
}
public HostConfig withUsernsMode(String usernsMode) {
this.usernsMode = usernsMode;
return this;
}
@CheckForNull
public String getCgroupnsMode() {
return cgroupnsMode;
}
public HostConfig withCgroupnsMode(String cgroupnsMode) {
this.cgroupnsMode = cgroupnsMode;
return this;
}
@CheckForNull
public Map getSysctls() {
return sysctls;
}
public HostConfig withSysctls(Map sysctls) {
this.sysctls = sysctls;
return this;
}
@CheckForNull
public List getConsoleSize() {
return consoleSize;
}
public HostConfig withConsoleSize(List consoleSize) {
this.consoleSize = consoleSize;
return this;
}
@CheckForNull
public Isolation getIsolation() {
return isolation;
}
public HostConfig withIsolation(Isolation isolation) {
this.isolation = isolation;
return this;
}
@CheckForNull
public Long getCpuRealtimePeriod() {
return cpuRealtimePeriod;
}
public HostConfig withCpuRealtimePeriod(Long cpuRealtimePeriod) {
this.cpuRealtimePeriod = cpuRealtimePeriod;
return this;
}
@CheckForNull
public Long getCpuRealtimeRuntime() {
return cpuRealtimeRuntime;
}
public HostConfig withCpuRealtimeRuntime(Long cpuRealtimeRuntime) {
this.cpuRealtimeRuntime = cpuRealtimeRuntime;
return this;
}
}