diff --git a/main.go b/main.go index f597321..9145cbf 100644 --- a/main.go +++ b/main.go @@ -65,6 +65,11 @@ func main() { Usage: "docker daemon allows insecure registries", EnvVar: "PLUGIN_INSECURE", }, + cli.BoolFlag{ + Name: "daemon.ipv6", + Usage: "docker daemon IPv6 networking", + EnvVar: "PLUGIN_IPV6", + }, cli.BoolFlag{ Name: "daemon.debug", Usage: "docker daemon executes in debug mode", @@ -163,6 +168,7 @@ func run(c *cli.Context) error { StoragePath: c.String("daemon.storage-path"), Insecure: c.Bool("daemon.insecure"), Disabled: c.Bool("daemon.off"), + IPv6: c.Bool("daemon.ipv6"), Debug: c.Bool("daemon.debug"), Bip: c.String("daemon.bip"), DNS: c.StringSlice("daemon.dns"), diff --git a/plugin.go b/plugin.go index 89fd7fd..9f1d1fc 100644 --- a/plugin.go +++ b/plugin.go @@ -27,6 +27,7 @@ type ( Bip string // Docker daemon network bridge IP address DNS []string // Docker daemon dns server MTU string // Docker daemon mtu setting + IPv6 bool // Docker daemon IPv6 networking } // Login defines Docker login parameters. @@ -213,6 +214,9 @@ func commandDaemon(daemon Daemon) *exec.Cmd { if daemon.Insecure && daemon.Registry != "" { args = append(args, "--insecure-registry", daemon.Registry) } + if daemon.IPv6 { + args = append(args, "--ipv6") + } if len(daemon.Mirror) != 0 { args = append(args, "--registry-mirror", daemon.Mirror) }