From 9c5438da65bba198bba2a2a127f3f6448dcb56c5 Mon Sep 17 00:00:00 2001 From: Jacek Kowalski <Jacek@jacekk.info> Date: Sun, 03 May 2026 14:12:59 +0000 Subject: [PATCH] NetworkDriver: fix return type annotation in create_interface --- README.md | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 55 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 46ee19d..aa1a02a 100644 --- a/README.md +++ b/README.md @@ -6,9 +6,12 @@ It should be a drop-in replacement for macvlan module. + + ## Installation Plugin is packaged as [Docker Engine-managed plugin](https://docs.docker.com/engine/extend/). +Check out [plugin page on Docker Hub](https://hub.docker.com/p/jacekkow/pyveth). To install it simply run: @@ -28,13 +31,63 @@ One will be pushed inside the container and another will remain on host (without any IP assigned). -Plugin accepts optional `parent` parameter, which is be a name of bridge -interface that the second interface should be added to: +## Options + +To use options, add `--opt option=value` as an argument of `docker network create`: ```bash docker network create --driver jacekkow/pyveth:latest --opt parent=br0 new-network ``` +Available options: + +`parent=brname` + +Automatically attach host interface to the bridge interface `brname`. + +`nogw=1` + +Disable assignment of gateway IP. + +`nogw4=1` + +Disable assignment of IPv4 gateway IP. + +`nogw6=1` + +Disable assignment of IPv6 gateway IP. + +`gw4=IP` + +`gw6=IP` + +Forces assignment of a specified gateway (only if one is not provided by the IPAM module) +when creating the interface. Useful for [pyipam](https://github.com/jacekkow/docker-plugin-pyipam) +with `ptp=1` option and `nogw=1`/`nogw4=1`/`nogw6=1` here. + +Using these would add routes like: +``` +default via IP dev eth0 +IP dev eth0 scope link +``` + +## Container creation options + +To use these options add `--network name=network_name,driver-opt=option=value,driver-opt=option=value` +to the `docker run` invocation: + +```bash +docker run -i -t --rm --network name=test,ip=192.168.1.1,driver-opt=gw4=192.168.0.1,driver-opt=gw6=fe80:: alpine +``` + +Available options: + +`gw4=IP` + +`gw6=IP` + +Overrides network-level gw4/gw6 options. + ## Manual packaging In order to test this module in development environment, you can build it @@ -42,5 +95,3 @@ You can also use `package.sh` helper script which will perform all the steps (including installation) automatically. - - -- Gitblit v1.10.0