O Docker usa o kernel do sistema operacional do host, não há kernel personalizado ou adicional dentro do contêiner. Todos os contêineres que são executados em uma máquina estão compartilhando esse kernel "host".
A Wikipédia diz link que
Docker uses resource isolation features of the Linux kernel such as cgroups and kernel namespaces to allow independent "containers" to run within a single Linux instance, avoiding the overhead of starting virtual machines.
cgroups, namespaces e LXC são recursos do kernel do Linux para isolar grupos de processos; ainda existe um único kernel, um único planejador e uma instância do gerenciador de memória do kernel.
Boot2docker e CoreOS são apenas distribuições Linux leves com algum kernel host; eles podem ser usados para carregar contêineres do Docker.
boot2docker is a lightweight Linux distribution based on Tiny Core Linux made specifically to run Docker containers. It runs completely from RAM, weighs ~27MB and boots in ~5s (YMMV).
A single control host (CoreOS instance) runs multiple isolated Linux systems (containers), using Docker as an additional layer of abstraction and interface[14] to the underlying operating-system-level virtualization features of the Linux kernel. ... This approach relies on the Linux kernel's cgroups functionality, which provides namespace isolation and abilities to limit, account and isolate resource usage (CPU, memory, disk I/O, etc.) for the collections of processes.