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