Jelajahi Sumber

Put the bridge interface name in the command line

Guillaume J. Charmes 12 tahun lalu
induk
melakukan
f39af7e05d
3 mengubah file dengan 11 tambahan dan 4 penghapusan
  1. 6 0
      docker/docker.go
  2. 4 3
      network.go
  3. 1 1
      runtime.go

+ 6 - 0
docker/docker.go

@@ -22,7 +22,13 @@ func main() {
 	// FIXME: Switch d and D ? (to be more sshd like)
 	flDaemon := flag.Bool("d", false, "Daemon mode")
 	flDebug := flag.Bool("D", false, "Debug mode")
+	bridgeName := flag.String("br", "", "")
 	flag.Parse()
+	if *bridgeName != "" {
+		docker.NetworkBridgeIface = *bridgeName
+	} else {
+		docker.NetworkBridgeIface = "lxcbr0"
+	}
 	if *flDebug {
 		os.Setenv("DEBUG", "1")
 	}

+ 4 - 3
network.go

@@ -11,10 +11,11 @@ import (
 	"strings"
 )
 
+var NetworkBridgeIface string
+
 const (
-	networkBridgeIface = "lxcbr0"
-	portRangeStart     = 49153
-	portRangeEnd       = 65535
+	portRangeStart = 49153
+	portRangeEnd   = 65535
 )
 
 // Calculates the first and last IP addresses in an IPNet

+ 1 - 1
runtime.go

@@ -267,7 +267,7 @@ func NewRuntimeFromDirectory(root string) (*Runtime, error) {
 	if err != nil {
 		return nil, fmt.Errorf("Couldn't create Tag store: %s", err)
 	}
-	netManager, err := newNetworkManager(networkBridgeIface)
+	netManager, err := newNetworkManager(NetworkBridgeIface)
 	if err != nil {
 		return nil, err
 	}