try to modprobe bridge
Signed-off-by: Jessica Frazelle <jess@docker.com>
(cherry picked from commit b3867b889960604904a4afbab6450bb9528afe06)
diff --git a/daemon/networkdriver/bridge/driver.go b/daemon/networkdriver/bridge/driver.go
index 0d6bc07..30a3a12 100644
--- a/daemon/networkdriver/bridge/driver.go
+++ b/daemon/networkdriver/bridge/driver.go
@@ -7,6 +7,7 @@
"io/ioutil"
"net"
"os"
+ "os/exec"
"strings"
"sync"
@@ -106,6 +107,13 @@
fixedCIDR = job.Getenv("FixedCIDR")
fixedCIDRv6 = job.Getenv("FixedCIDRv6")
)
+
+ // try to modprobe bridge first
+ // see gh#12177
+ if out, err := exec.Command("modprobe", "-va", "bridge", "nf_nat").Output(); err != nil {
+ log.Warnf("Running modprobe bridge nf_nat failed with message: %s, error: %v", out, err)
+ }
+
initPortMapper()
if defaultIP := job.Getenv("DefaultBindingIP"); defaultIP != "" {