Files
podman/docs/source/markdown/podman-network-create.1.md
Paul Holzinger 8494bcb866 podman network label support
Add label support for podman network create. Use the `args`
field in the cni config file to store the podman labels.
Use `podman_labels` as key name and store the labels as
map[string]string.

For reference: https://github.com/containernetworking/cni/blob/master/CONVENTIONS.md#args-in-network-config
https://github.com/containernetworking/cni/blob/spec-v0.4.0/SPEC.md#network-configuration

Example snippet:

```
...
"args": {
	"podman_labels": {
		"key1":"value1",
		"key2":"value2"
	}
}
...
```

Make podman network list support several filters. Supported filters are name,
plugin, driver and label. Filters with different keys work exclusive. Several label
filters work exclusive and the other filter keys are working inclusive.

Also adjust the compat api to support labels in network create and list.

Breaking changes:

- podman network ls -f shortform is used for --filter instead --format
This matches docker and other podman commands (container ps, volume ps)

- libpod network list endpoint filter parameter is removed. Instead the
filters paramter should be used as json encoded map[string][]string.

Signed-off-by: Paul Holzinger <paul.holzinger@web.de>
2020-11-28 18:35:43 +01:00

3.0 KiB

% podman-network-create(1)

NAME

podman-network-create - Create a Podman CNI network

SYNOPSIS

podman network create [options] name

DESCRIPTION

Create a CNI-network configuration for use with Podman. By default, Podman creates a bridge connection. A Macvlan connection can be created with the macvlan option. In the case of Macvlan connections, the CNI dhcp plugin needs to be activated or the container image must have a DHCP client to interact with the host network's DHCP server.

If no options are provided, Podman will assign a free subnet and name for your network.

Upon completion of creating the network, Podman will display the path to the newly added network file.

OPTIONS

--disable-dns

Disables the DNS plugin for this network which if enabled, can perform container to container name resolution.

--driver, -d

Driver to manage the network (default "bridge"). Currently only bridge is supported.

--gateway

Define a gateway for the subnet. If you want to provide a gateway address, you must also provide a subnet option.

--internal

Restrict external access of this network

--ip-range

Allocate container IP from a range. The range must be a complete subnet and in CIDR notation. The ip-range option must be used with a subnet option.

--label

Set metadata for a network (e.g., --label mykey=value).

--macvlan

Create a Macvlan based connection rather than a classic bridge. You must pass an interface name from the host for the Macvlan connection.

--subnet

The subnet in CIDR notation.

--ipv6

Enable IPv6 (Dual Stack) networking. You must pass a IPv6 subnet. The subnet option must be used with the ipv6 option.

EXAMPLE

Create a network with no options

# podman network create
/etc/cni/net.d/cni-podman-4.conflist

Create a network named newnet that uses 192.5.0.0/16 for its subnet.

# podman network create --subnet 192.5.0.0/16 newnet
/etc/cni/net.d/newnet.conflist

Create an IPv6 network named newnetv6, you must specify the subnet for this network, otherwise the command will fail. For this example, we use 2001:db8::/64 for its subnet.

# podman network create --subnet 2001:db8::/64 --ipv6 newnetv6
/etc/cni/net.d/newnetv6.conflist

Create a network named newnet that uses 192.168.33.0/24 and defines a gateway as 192.168.133.3

# podman network create --subnet 192.168.33.0/24 --gateway 192.168.33.3 newnet
/etc/cni/net.d/newnet.conflist

Create a network that uses a 192.168.55.0/24* subnet and has an IP address range of 192.168.55.129 - 192.168.55.254.

# podman network create --subnet 192.168.55.0/24 --ip-range 192.168.55.128/25
/etc/cni/net.d/cni-podman-5.conflist

Create a Macvlan based network using the host interface eth0

# podman network create --macvlan eth0 newnet
/etc/cni/net.d/newnet.conflist

SEE ALSO

podman(1), podman-network(1), podman-network-inspect(1)

HISTORY

August 2019, Originally compiled by Brent Baude bbaude@redhat.com