commit | author | age
|
f973b9
|
1 |
# pyveth - Docker Plugin for veth networks |
JK |
2 |
|
|
3 |
Simple network plugin for Docker Engine that can replace macvlan |
|
4 |
in container-as-VM scenarios, allowing host-to-container communication |
|
5 |
(see https://github.com/docker/for-linux/issues/931 for bug details). |
|
6 |
|
|
7 |
It should be a drop-in replacement for macvlan module. |
|
8 |
|
e2cff6
|
9 |
![Build status](https://github.com/jacekkow/docker-plugin-pyveth/workflows/Release/badge.svg) |
JK |
10 |
|
f973b9
|
11 |
## Installation |
JK |
12 |
|
|
13 |
Plugin is packaged as [Docker Engine-managed plugin](https://docs.docker.com/engine/extend/). |
e2cff6
|
14 |
Check out [plugin page on Docker Hub](https://hub.docker.com/p/jacekkow/pyveth). |
f973b9
|
15 |
|
JK |
16 |
To install it simply run: |
|
17 |
|
|
18 |
```bash |
|
19 |
docker plugin install jacekkow/pyveth |
|
20 |
``` |
|
21 |
|
|
22 |
## Usage |
|
23 |
|
|
24 |
After installation you can use driver in newly-created networks: |
|
25 |
|
|
26 |
```bash |
|
27 |
docker network create --driver jacekkow/pyveth:latest new-network |
|
28 |
``` |
|
29 |
|
|
30 |
By default it will simply create a pair of veth interfaces for each container. |
|
31 |
One will be pushed inside the container and another will remain on host |
|
32 |
(without any IP assigned). |
|
33 |
|
e2cff6
|
34 |
Plugin accepts optional `parent` parameter, which is a name of bridge |
f973b9
|
35 |
interface that the second interface should be added to: |
JK |
36 |
|
|
37 |
```bash |
|
38 |
docker network create --driver jacekkow/pyveth:latest --opt parent=br0 new-network |
|
39 |
``` |
e2cff6
|
40 |
|
JK |
41 |
This way host interface will be automatically attached to the specified bridge. |
f973b9
|
42 |
|
JK |
43 |
## Manual packaging |
|
44 |
|
|
45 |
In order to test this module in development environment, you can build it |
|
46 |
by following [Docker Engine documentation](https://docs.docker.com/engine/extend/#developing-a-plugin). |
|
47 |
|
|
48 |
You can also use `package.sh` helper script which will perform |
|
49 |
all the steps (including installation) automatically. |