Docker

About
Docker is a container virtualization environment. With it you can setup development environments without messing up your base system, or deploy instances of containers. This is a thin virtualization, using your host kernel, making it faster, but the container produces a kernel panic, you also will have a kernel panic.

Kernel config
If you miss the kernel config, you will get a list of kernel options missing. You can set them manually, by using / (slash) in menuconfig to search the name of the option. -> General setup * -> Control Group support --> *   Device controller for cgroups *   Memory Resource Controller for Control Groups *     Memory Resource Controller Swap Extension *        Memory Resource Controller Swap Extension enabled by default

*   Enable perf_event per-cpu per-container group (cgroup) monitoring *   -> Group CPU scheduler --> *        Group scheduling for SCHED_OTHER *          CPU bandwidth provisioning for FAIR_GROUP_SCHED *   Block IO controller

-> Networking support -> Networking options --> * -> Network packet filtering framework (Netfilter) --> *   -> Advanced netfilter configuration *        Bridged IP/ARP packets filtering *   802.1d Ethernet Bridging

-> Device Drivers * -> Multiple devices driver support (RAID and LVM) --> *     -> Device mapper support *        Thin provisioning target * -> Network device support --> *   -> Network core driver support *      MAC-VLAN support *      Virtual ethernet pair device -> Character devices --> -*- Enable TTY -*-   Unix98 PTY support *        Support multiple instances of devpts

Build kernel, and deploy, and reboot.

OR for parallel compile

(don't forget to do other kernel related tasks, rebuild your video driver)

Installation
Use the app-emulation/docker package

After successfully installed start it, and/or add to default boot sequence.

Add yourself / relevant users to the docker group

Testing docker
Create a new Dockerfile in an empty directory with the following content: FROM php:5.6-apache

Run: