docker学习(一)——docker基础技术概念入门

版权声明:如需转载,请注明作者及出处 https://blog.csdn.net/qq_33317586/article/details/85225040

容器:  container

容器是啥?https://zh.wikipedia.org/wiki/%E5%AE%B9%E5%99%A8


LXC:Linux Container


虚拟化的常用技术实现形式:

1.主机级虚拟化

  1. Type-I:直接在硬件上装虚拟机管理器(hypervisor),在虚拟机管理器上面跑虚拟机。
  2. Type-II:vmware,virtual box。(物理机上装操作系统,系统上装vmm(virtual mechina manager),vmm上面跑虚拟机)

2.容器级虚拟化(当年叫jail)


共享内核,隔离用户空间;vserver(chroot);

两棵树:进程树和文件系统树

chroot,namespaces,cgroups(在内核级已经实现)

jail >> vserver >>  发展到了LXC


6种名称空间: 

Linux Namespaces
namespace 系统调用参数 隔离内容 内核版本
UTS CLONE_NEWUTS 主机名和域名 2.6.19
IPC CLONE_NEWIPC 信号量、消息队列和共享内存 2.6.19
PID CLONE_NEWPID 进程编号 2.6.24
Network CLONE_NEWNET 网络设备、网络栈、端口等 2.6.29
Mount CLONE_NEWNS 挂载点(文件系统) 2.4.19
User CLONE_NEWUSER 用户和用户组 3.8

Control Groups(cgroups)

作用:实现用户空间的资源分配


 LXC:

  • lxc-create,template

docker可以说是lxc的增强版,简化了linux容器的使用。

docker利用lxc做容器引擎,通过镜像技术启动容器。


从docker仓库(docker hub)拉取镜像到本地运行

docker:一个容器只运行一个进程。lxc:每个容器当用户独立空间使用

联合挂载,一层一层的,只能对最上面一层进行操作,无法删除下层的文件,删除只是表面删除

扫描二维码关注公众号,回复: 4710696 查看本文章

容器编排工具:

  • machine+swarm+compose
  • mesos+marathon
  • kubernetes(k8s)

docker自建容器引擎

libcontainer >> 发展成为runC

猜你喜欢

转载自blog.csdn.net/qq_33317586/article/details/85225040