This should satisfy several use cases. The one I tested for was CNI.
I replaced the network configuration in a root owned container with:
lxc.net.0.type = empty
lxc.hook.start-host = /bin/lxc-start-netns
where /bin/lxc-start-netns contained:
=================================
echo "starting" > /tmp/debug
ip link add host1 type veth peer name peer1
ip link set host1 master lxcbr0
ip link set host1 up
ip link set peer1 netns "${LXC_PID}"
=================================
The nic 'peer1' was placed into the container as expected.
For this to work, we pass the container init's pid as LXC_PID in
an environment variable, since lxc-info cannot work at that point.
Signed-off-by:
Serge Hallyn <shallyn@cisco.com>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| api | Loading commit data... | |
| examples | Loading commit data... | |
| ja | Loading commit data... | |
| ko | Loading commit data... | |
| rootfs | Loading commit data... | |
| FAQ.txt | Loading commit data... | |
| Makefile.am | Loading commit data... | |
| common_options.sgml.in | Loading commit data... | |
| lxc-attach.sgml.in | Loading commit data... | |
| lxc-autostart.sgml.in | Loading commit data... | |
| lxc-cgroup.sgml.in | Loading commit data... | |
| lxc-checkconfig.sgml.in | Loading commit data... | |
| lxc-checkpoint.sgml.in | Loading commit data... | |
| lxc-clone.sgml.in | Loading commit data... | |
| lxc-config.sgml.in | Loading commit data... | |
| lxc-console.sgml.in | Loading commit data... | |
| lxc-copy.sgml.in | Loading commit data... | |
| lxc-create.sgml.in | Loading commit data... | |
| lxc-destroy.sgml.in | Loading commit data... | |
| lxc-device.sgml.in | Loading commit data... | |
| lxc-execute.sgml.in | Loading commit data... | |
| lxc-freeze.sgml.in | Loading commit data... | |
| lxc-info.sgml.in | Loading commit data... | |
| lxc-ls.sgml.in | Loading commit data... | |
| lxc-monitor.sgml.in | Loading commit data... | |
| lxc-snapshot.sgml.in | Loading commit data... | |
| lxc-start-ephemeral.sgml.in | Loading commit data... | |
| lxc-start.sgml.in | Loading commit data... | |
| lxc-stop.sgml.in | Loading commit data... | |
| lxc-top.sgml.in | Loading commit data... | |
| lxc-unfreeze.sgml.in | Loading commit data... | |
| lxc-unshare.sgml.in | Loading commit data... | |
| lxc-update-config.sgml.in | Loading commit data... | |
| lxc-user-nic.sgml.in | Loading commit data... | |
| lxc-usernet.sgml.in | Loading commit data... | |
| lxc-usernsexec.sgml.in | Loading commit data... | |
| lxc-wait.sgml.in | Loading commit data... | |
| lxc.conf.sgml.in | Loading commit data... | |
| lxc.container.conf | Loading commit data... | |
| lxc.container.conf.sgml.in | Loading commit data... | |
| lxc.sgml.in | Loading commit data... | |
| lxc.system.conf | Loading commit data... | |
| lxc.system.conf.sgml.in | Loading commit data... | |
| see_also.sgml.in | Loading commit data... |