
Make use of the new network interface in libpod. This commit contains several breaking changes: - podman network create only outputs the new network name and not file path. - podman network ls shows the network driver instead of the cni version and plugins. - podman network inspect outputs the new network struct and not the cni conflist. - The bindings and libpod api endpoints have been changed to use the new network structure. The container network status is stored in a new field in the state. The status should be received with the new `c.getNetworkStatus`. This will migrate the old status to the new format. Therefore old containers should contine to work correctly in all cases even when network connect/ disconnect is used. New features: - podman network reload keeps the ip and mac for more than one network. - podman container restore keeps the ip and mac for more than one network. - The network create compat endpoint can now use more than one ipam config. The man pages and the swagger doc are updated to reflect the latest changes. Signed-off-by: Paul Holzinger <pholzing@redhat.com>
3.4 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 -d macvlan option. A parent device for macvlan can
be designated with the -o parent=<device>
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 name of the newly added network.
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. Currently bridge
and macvlan
is supported. Defaults to bridge
.
As rootless the macvlan
driver has no access to the host network interfaces because rootless networking requires a separate network namespace.
--opt=option, -o
Set driver specific options.
For the bridge
driver the following options are supported: mtu
and vlan
.
The mtu
option sets the Maximum Transmission Unit (MTU) and takes an integer value.
The vlan
option assign VLAN tag and enables vlan_filtering. Defaults to none.
--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. Note when using this option, the dnsname plugin will be automatically disabled.
--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).
--subnet
The subnet in CIDR notation.
--ipv6
Enable IPv6 (Dual Stack) networking.
EXAMPLE
Create a network with no options.
$ podman network create
cni-podman2
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
newnet
Create an IPv6 network named newnetv6 with a subnet of 2001:db8::/64.
$ podman network create --subnet 2001:db8::/64 --ipv6 newnetv6
newnetv6
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
newnet
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
cni-podman5
Create a Macvlan based network using the host interface eth0. Macvlan networks can only be used as root.
# podman network create -d macvlan -o parent=eth0 newnet
newnet
SEE ALSO
podman(1), podman-network(1), podman-network-inspect(1), podman-network-ls(1)
HISTORY
August 2021, Updated with the new network format by Paul Holzinger pholzing@redhat.com
August 2019, Originally compiled by Brent Baude bbaude@redhat.com