| package daemon // import "github.com/docker/docker/daemon" |
| |
| import ( |
| "context" |
| |
| "github.com/docker/docker/container" |
| "github.com/docker/docker/errdefs" |
| "github.com/docker/docker/libcontainerd/types" |
| "github.com/docker/docker/oci" |
| specs "github.com/opencontainers/runtime-spec/specs-go" |
| ) |
| |
| // initializeCreatedTask performs any initialization that needs to be done to |
| // prepare a freshly-created task to be started. |
| func (daemon *Daemon) initializeCreatedTask(ctx context.Context, tsk types.Task, container *container.Container, spec *specs.Spec) error { |
| if !container.Config.NetworkDisabled { |
| nspath, ok := oci.NamespacePath(spec, specs.NetworkNamespace) |
| if ok && nspath == "" { // the runtime has been instructed to create a new network namespace for tsk. |
| sb, err := daemon.netController.GetSandbox(container.ID) |
| if err != nil { |
| return errdefs.System(err) |
| } |
| return sb.FinishConfig() |
| } |
| } |
| return nil |
| } |