pkg/libcontainer/nsinit
Alexander Larsson eebaba3215 Move all bind-mounts in the container inside the namespace
This moves the bind mounts like /.dockerinit, /etc/hostname, volumes,
etc into the container namespace, by setting them up using lxc.

This is useful to avoid littering the global namespace with a lot of
mounts that are internal to each container and are not generally
needed on the outside. In particular, it seems that having a lot of
mounts is problematic wrt scaling to a lot of containers on systems
where the root filesystem is mounted --rshared.

Note that the "private" option is only supported by the native driver, as
lxc doesn't support setting this. This is not a huge problem, but it does
mean that some mounts are unnecessarily shared inside the container if you're
using the lxc driver.

Docker-DCO-1.1-Signed-off-by: Alexander Larsson <alexl@redhat.com> (github: alexlarsson)
2014-03-13 20:01:29 +01:00
..
nsinit nsinit: prefix errors with their source 2014-03-10 17:08:50 -07:00
command.go libcontainer: Don't use UsetCloseOnExec, it is racy 2014-03-06 14:10:32 +01:00
exec.go libcontainer: Don't use UsetCloseOnExec, it is racy 2014-03-06 14:10:32 +01:00
execin.go Factor out finalize namespace 2014-03-03 12:15:47 -08:00
init.go Move all bind-mounts in the container inside the namespace 2014-03-13 20:01:29 +01:00
mount.go Move all bind-mounts in the container inside the namespace 2014-03-13 20:01:29 +01:00
nsinit.go Refactor and improve libcontainer and driver 2014-02-24 21:11:52 -08:00
state.go Move container.json and pid file into a root specific driver dir 2014-02-25 12:41:31 -08:00
sync_pipe.go libcontainer: Don't use UsetCloseOnExec, it is racy 2014-03-06 14:10:32 +01:00
term.go Refactor driver to use Exec function from nsini 2014-02-22 01:21:26 -08:00
unsupported.go Fix cross compile for make cross 2014-02-25 15:19:13 -08:00