mirror of https://github.com/docker/docs.git
Move security opt adaption to adapt function
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
This commit is contained in:
parent
e75da4b6ff
commit
1415f55cc0
|
@ -31,7 +31,13 @@ func (daemon *Daemon) ContainerCreate(params *ContainerCreateConfig) (types.Cont
|
||||||
return types.ContainerCreateResponse{ID: "", Warnings: warnings}, err
|
return types.ContainerCreateResponse{ID: "", Warnings: warnings}, err
|
||||||
}
|
}
|
||||||
|
|
||||||
daemon.adaptContainerSettings(params.HostConfig, params.AdjustCPUShares)
|
if params.HostConfig == nil {
|
||||||
|
params.HostConfig = &runconfig.HostConfig{}
|
||||||
|
}
|
||||||
|
err = daemon.adaptContainerSettings(params.HostConfig, params.AdjustCPUShares)
|
||||||
|
if err != nil {
|
||||||
|
return types.ContainerCreateResponse{ID: "", Warnings: warnings}, err
|
||||||
|
}
|
||||||
|
|
||||||
container, err := daemon.create(params)
|
container, err := daemon.create(params)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -62,15 +68,6 @@ func (daemon *Daemon) create(params *ContainerCreateConfig) (retC *Container, re
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if params.HostConfig == nil {
|
|
||||||
params.HostConfig = &runconfig.HostConfig{}
|
|
||||||
}
|
|
||||||
if params.HostConfig.SecurityOpt == nil {
|
|
||||||
params.HostConfig.SecurityOpt, err = daemon.generateSecurityOpt(params.HostConfig.IpcMode, params.HostConfig.PidMode)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if container, err = daemon.newContainer(params.Name, params.Config, imgID); err != nil {
|
if container, err = daemon.newContainer(params.Name, params.Config, imgID); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
|
@ -112,11 +112,7 @@ func checkKernel() error {
|
||||||
|
|
||||||
// adaptContainerSettings is called during container creation to modify any
|
// adaptContainerSettings is called during container creation to modify any
|
||||||
// settings necessary in the HostConfig structure.
|
// settings necessary in the HostConfig structure.
|
||||||
func (daemon *Daemon) adaptContainerSettings(hostConfig *runconfig.HostConfig, adjustCPUShares bool) {
|
func (daemon *Daemon) adaptContainerSettings(hostConfig *runconfig.HostConfig, adjustCPUShares bool) error {
|
||||||
if hostConfig == nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
if adjustCPUShares && hostConfig.CPUShares > 0 {
|
if adjustCPUShares && hostConfig.CPUShares > 0 {
|
||||||
// Handle unsupported CPUShares
|
// Handle unsupported CPUShares
|
||||||
if hostConfig.CPUShares < linuxMinCPUShares {
|
if hostConfig.CPUShares < linuxMinCPUShares {
|
||||||
|
@ -135,6 +131,15 @@ func (daemon *Daemon) adaptContainerSettings(hostConfig *runconfig.HostConfig, a
|
||||||
shmSize := runconfig.DefaultSHMSize
|
shmSize := runconfig.DefaultSHMSize
|
||||||
hostConfig.ShmSize = &shmSize
|
hostConfig.ShmSize = &shmSize
|
||||||
}
|
}
|
||||||
|
var err error
|
||||||
|
if hostConfig.SecurityOpt == nil {
|
||||||
|
hostConfig.SecurityOpt, err = daemon.generateSecurityOpt(hostConfig.IpcMode, hostConfig.PidMode)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// verifyPlatformContainerSettings performs platform-specific validation of the
|
// verifyPlatformContainerSettings performs platform-specific validation of the
|
||||||
|
|
Loading…
Reference in New Issue