Posts Docker 发展及核心理论
Post
Cancel

Docker 发展及核心理论

LXC 和 Docker 联系及区别

首先不管是 Docker 还是 LXC 其实都与 cgroup 有关,Docker 1.8 之前使用 LXC(Linux Containers) 基础上实现的,之后开发了 libcontainer(现在是 opencontainers/runc),意味着自己基于cgroup内核框架实现了一套,可以参考: StackOverflow IMAGE

Runc 核心原理

主要对 OS 级别中的 cgroup 进行再次封装,进行了很多容器级别针对性的优化,主要为了去 LXC 化而产生的层。

注意:此项目从原有 Docker 项目剥离, 目前改名 Moby.

Containerd 核心原理

容器的运行时框架 containerd 层,此框架包装了一系列的技术,主要含有 runc 框架、swarmkit 框架、LibNetwork框架等等,此项目已经包含了所有容器技术核心所需的技术。

注意:此项目从原有 Docker 项目剥离, 目前改名 Moby,并捐献给了 CNCF。

IMAGE

Moby

此项目目前被剥离成主要围绕应用层,配置管理,客户端CLI工具之类的。

IBM资料

CGroup 介绍

FAQ

  • 容器杀掉后如何让应用优雅退出?

    命令 docker stop 会先发 SIGTERM 然后超时再发 SIGKILL - JAVA中可以利用下面代码监控 SIGTERM - 点击查看相关参考文档

    1
    
    Runtime.addShutdownHook();
    
This post is licensed under CC BY 4.0

Hibernate 查询结果映射 Result Set Mapping 处理

Golang 依赖包下载时候代理设置

Comments powered by Disqus.