github.com/dpiddy/docker@v1.12.2-rc1/docs/extend/plugins_network.md (about)

     1  <!--[metadata]>
     2  +++
     3  title = "Docker network driver plugins"
     4  description = "Network driver plugins."
     5  keywords = ["Examples, Usage, plugins, docker, documentation, user guide"]
     6  [menu.main]
     7  parent = "engine_extend"
     8  weight=5
     9  +++
    10  <![end-metadata]-->
    11  
    12  # Engine network driver plugins
    13  
    14  This document describes Docker Engine network driver plugins generally
    15  available in Docker Engine. To view information on plugins
    16  managed by Docker Engine, refer to [Docker Engine plugin system](index.md).
    17  
    18  Docker Engine network plugins enable Engine deployments to be extended to
    19  support a wide range of networking technologies, such as VXLAN, IPVLAN, MACVLAN
    20  or something completely different. Network driver plugins are supported via the
    21  LibNetwork project. Each plugin is implemented as a  "remote driver" for
    22  LibNetwork, which shares plugin infrastructure with Engine. Effectively, network
    23  driver plugins are activated in the same way as other plugins, and use the same
    24  kind of protocol.
    25  
    26  ## Network driver plugins and swarm mode
    27  
    28  Docker 1.12 adds support for cluster management and orchestration called
    29  [swarm mode](../swarm/index.md). Docker Engine running in swarm mode currently
    30  only supports the built-in overlay driver for networking. Therefore existing
    31  networking plugins will not work in swarm mode.
    32  
    33  When you run Docker Engine outside of swarm mode, all networking plugins that
    34  worked in Docker 1.11 will continue to function normally. They do not require
    35  any modification.
    36  
    37  ## Using network driver plugins
    38  
    39  The means of installing and running a network driver plugin depend on the
    40  particular plugin. So, be sure to install your plugin according to the
    41  instructions obtained from the plugin developer.
    42  
    43  Once running however, network driver plugins are used just like the built-in
    44  network drivers: by being mentioned as a driver in network-oriented Docker
    45  commands. For example,
    46  
    47      $ docker network create --driver weave mynet
    48  
    49  Some network driver plugins are listed in [plugins](legacy_plugins.md)
    50  
    51  The `mynet` network is now owned by `weave`, so subsequent commands
    52  referring to that network will be sent to the plugin,
    53  
    54      $ docker run --network=mynet busybox top
    55  
    56  
    57  ## Write a network plugin
    58  
    59  Network plugins implement the [Docker plugin
    60  API](https://docs.docker.com/extend/plugin_api/) and the network plugin protocol
    61  
    62  ## Network plugin protocol
    63  
    64  The network driver protocol, in addition to the plugin activation call, is
    65  documented as part of libnetwork:
    66  [https://github.com/docker/libnetwork/blob/master/docs/remote.md](https://github.com/docker/libnetwork/blob/master/docs/remote.md).
    67  
    68  # Related Information
    69  
    70  To interact with the Docker maintainers and other interested users, see the IRC channel `#docker-network`.
    71  
    72  -  [Docker networks feature overview](../userguide/networking/index.md)
    73  -  The [LibNetwork](https://github.com/docker/libnetwork) project