容器
Containers are lightweight packages of your application code together with dependencies such as specific versions of programming language runtimes and libraries required to run your software services.
容器的基本思想就是包含一个或一组进程,使其看起来有自己的PID、网络、用户、磁盘等,并且隔离,容器外部不可见。隔离的实现依赖了Linux namespaces (network, user, IPC, uts, PID, and mount), cgroups, Apparmor/SELinux profiles, 和 secomp policies等几个内核功能。想详细了解这几个内核功能,可以参考coolshell的几篇文章 Docker基础技术:Linux Namespace(上)
Docker
可以说是对 Linux 容器技术的一个友好封装,使其易用
参考
https://patg.net/containers,virtualization,docker/2014/06/05/docker-intro/