Forráskód Böngészése

LCOW: owner and network endpoints

Signed-off-by: John Howard <jhoward@microsoft.com>
John Howard 8 éve
szülő
commit
e99a633720
1 módosított fájl, 17 hozzáadás és 4 törlés
  1. 17 4
      libcontainerd/client_windows.go

+ 17 - 4
libcontainerd/client_windows.go

@@ -292,10 +292,11 @@ func (clnt *client) createLinux(containerID string, checkpoint string, checkpoin
 	// TODO @jhowardmsft LCOW Support: This needs to be configurable, not hard-coded.
 	// However, good-enough for the LCOW bring-up.
 	configuration := &hcsshim.ContainerConfig{
-		HvPartition:                 true,
-		Name:                        containerID,
-		SystemType:                  "container",
-		ContainerType:               "linux",
+		HvPartition:   true,
+		Name:          containerID,
+		SystemType:    "container",
+		ContainerType: "linux",
+		Owner:         defaultOwner,
 		TerminateOnLastHandleClosed: true,
 		HvRuntime: &hcsshim.HvRuntime{
 			ImagePath: `c:\program files\lcow`,
@@ -328,6 +329,18 @@ func (clnt *client) createLinux(containerID string, checkpoint string, checkpoin
 		})
 	}
 
+	for _, option := range options {
+		if n, ok := option.(*NetworkEndpointsOption); ok {
+			configuration.EndpointList = n.Endpoints
+			configuration.AllowUnqualifiedDNSQuery = n.AllowUnqualifiedDNSQuery
+			if n.DNSSearchList != nil {
+				configuration.DNSSearchList = strings.Join(n.DNSSearchList, ",")
+			}
+			configuration.NetworkSharedContainerName = n.NetworkSharedContainerID
+			break
+		}
+	}
+
 	hcsContainer, err := hcsshim.CreateContainer(containerID, configuration)
 	if err != nil {
 		return err