Warning! This is still a work in progress.
Provides tools for managing LXC in Ubuntu 12.04 and Ubuntu 12.04 Containers. Other containers are not supported (yet?)
- Creates containers using overlayfs
- Can handle multiple overlayfs layers
Create a container named test1
:
import lxc4u test1_lxc = lxc4u.create('test1') # Wait a long time... # Start the container test1_lxc.start()
Create a container that overlays test1
:
import lxc4u test1_overlay_lxc = lxc4u.create('test1_overlay', base='test1', overlays=['overlay_path']) # Start the container test1_overlay_lxc.start() test1_overlay_lxc.destroy()
Create a container with multiple overlays of test1
. The right most overlay
is the upper most overlay directory:
import lxc4u test1_overlay_lxc = lxc4u.create('test1_overlay', base='test1', overlays=['overlay1_path', 'overlay2_path']) # Start the container test1_overlay_lxc.start()
These examples have not yet been implemented. Soon!
Starting a container named test1
. This assumes lxc is properly configured
in your system:
import lxc4u # Start container test1_lxc = lxc4u.start('test1') # Stop container test1_lxc.stop() # or lxc4u.stop('test1')
Starting an ephemeral container using test1 as a base:
import lxc4u # Start container test1_ephemeral_lxc = lxc4u.start('test1', ephemeral=True) # Stop container test1_ephemeral_lxc.stop()
Starting an ephemeral container using test1 with static network settings:
import lxc4u network_settings = dict( ip="10.0.3.5", gateway="10.0.3.1", netmask="255.255.255.0", network="10.0.3.0", ) # Start container test1_ephemeral_lxc = lxc4u.start('test1', ephemeral=True, static_network=network_settings) # Stop container test1_ephemeral_lxc.stop()
Starting an ephemeral container using with a startup command (must be available on the container's path):
import lxc4u # Start container test1_ephemeral_lxc = lxc4u.start('test1', ephemeral=True, startup_command="/usr/local/bin/somecommand") # Stop container test1_ephemeral_lxc.stop()