// asDockerHostConfig converts a RunContainerOptions into a HostConfig // understood by the go-dockerclient library. func (rco RunContainerOptions) asDockerHostConfig() docker.HostConfig { hostConfig := docker.HostConfig{ CapDrop: rco.CapDrop, PublishAllPorts: rco.TargetImage, NetworkMode: rco.NetworkMode, } if rco.CGroupLimits != nil { hostConfig.Memory = rco.CGroupLimits.MemoryLimitBytes hostConfig.MemorySwap = rco.CGroupLimits.MemorySwap hostConfig.CPUShares = rco.CGroupLimits.CPUShares hostConfig.CPUQuota = rco.CGroupLimits.CPUQuota hostConfig.CPUPeriod = rco.CGroupLimits.CPUPeriod } return hostConfig }