This is an old revision of the document!
Netmodule Routers offer virtualisation through lxc containers which offer a great way of implementing your own custom services. The following page will give you an overview about lxc containers, their concept as well as example use cases and ready to use containers.
LXC containers allow you to run multiple isolated Linux systems or applications on a single host. They differ from traditional virtual machines because there is no hypervisor nor full OS required meaning that the containers all use the same kernel from the host system each running in their own isolated environment (done through cgroups and namespaces). Therefore they offer an environment as close as possible to a full VM but without the overhead that comes with running a separate kernel and simulating all the hardware.
Container Internals
What Devices can be mapped into LXC
To establish network connectivity from a container to the outside world you have two main options. Please be aware that the amount of available interfaces depends on your router model.
Generally you can either create a routed interface, where you set your own IP settings that will connect the router (through a virtual interface, virt0) to the guest interface of your cotnainer. The other option is that you bridge the containers interface to an existing one on the router.
Routed and Bridged Interfaces → Detailed Subpage
Generic
Always up-to-date generic containers can be found on the official jenkins of linuxcontainers.org. Once you select the Linux OS of your flavor, be sure that you download your container for the armhf architecture to ensure it will be compatible with the router.
This is a great way to have a fresh start for your own container or to try a newer version of a specific OS. Please be aware that those contain just a basic container OS that can then be customized to ones needs.
The following list contains some generic OS based Containers, that are available through our ftp server:
Here are some ready to use containers and descriptions about the setup:
Overview of typicle “Duties” during a lifecycle: Creating, Provision, Installing, Updating
Possibilites of Provisioning a Container _→ new Wiki page