Runc hook (OCI compatible) for setting up default bridge networking for containers.

Clone this repo:
  1. de81619 Fix golint import path (#10) by alexander zillion · 3 weeks ago master
  2. f805025 update vendor by Jess Frazelle · 7 weeks ago
  3. 9b08b6b update vendor by Jess Frazelle · 7 weeks ago
  4. e938810 Bump version to v0.5.2 by Jess Frazelle · 7 weeks ago v0.5.2
  5. 5c064dd update by Jess Frazelle · 7 weeks ago

netns

Travis CI GoDoc Github All Releases

Runc hook for setting up default bridge networking.

Installation

Binaries

For installation instructions from binaries please visit the Releases Page.

Via Go

$ go get github.com/genuinetools/netns

Usage

$ netns -h
netns -  Runc hook for setting up default bridge networking.

Usage: netns <command>

Flags:

  --ipfile     file in which to save the containers ip address (default: .ip)
  --mtu        mtu for bridge (default: 1500)
  --state-dir  directory for saving state, used for ip allocation (default: /run/github.com/genuinetools/netns)
  --bridge     name for bridge (default: netns0)
  -d           enable debug logging (default: false)
  --iface      name of interface in the namespace (default: eth0)
  --ip         ip address for bridge (default: 172.19.0.1/16)

Commands:

  create   Create a network.
  ls       List networks.
  rm       Delete a network.
  version  Show the version information.

Place this in the Hooks.Prestart field of your runc config.

{
    ...
    "hooks": {
        "prestart": [
            {
                "path": "/path/to/netns"
            }
        ]
    },
    ...
}

List network namespaces

$ sudo netns ls
IP                  LOCAL VETH          PID                 STATUS
172.19.0.3          netnsv0-21635       21635               running
172.19.0.4          netnsv0-21835       21835               running
172.19.0.5          netnsv0-22094       22094               running
172.19.0.6          netnsv0-25996       25996               running