Containers is a lightweight virtualization technology and has gained significant popularity lately. This post covers LXC(Linux Containers) support in CloudPlatform, deploying Docker containers on top of CoreOS Vms provisioned by CloudPlatform

CloudPlatform supports Linux Containers (LXC) as first class entity similar to the other hypervisors such as Xen, KVM, VMWare. A tar file of container filesystem is used as a template. LXC containers can be deployed using such templates. LXC containers run from a directory that serves as the root filesystem. Similar to KVM, LXC containers will be created using libvirt with lxc driver


CoreOS is a minimal  Linux distribution with Docker support. CoreOS also has cloud-init support. CoreOS Vms are supported in CloudPlatform with templates hosted at .

Further documentation on deploying CoreOS Vms is available here

These templates are pre-seeded with scripts required to fetch userdata, set ssh keys. A pool of CoreOS Vms can be deployed on CloudPlatform. Tools like Kubernetes, Shipyard can be used to orchestrate container on these CoreOS Vms. Docker containers can also be directly created using cloud-init which can provided to CoreOS vm using userdata.


Below cloud-config will create httpd container and also setup port-forwarding on port 8000




– name: docker.service

command: start

– name: web.service

command: start

content: |




Description=Starts web server container



ExecStartPre=/usr/bin/docker pull httpd:2.4

ExecStart=/usr/bin/docker run -d -p 8000:80 httpd:2.4

deployVirtualMachine using the parameter userdata= to include above user-data formated in base64

With support for CoreOS and future support for OS like Atomic and RanchesOS, CloudPlatform along with rich networking capabilities can be a good platform for container deployment.