1 月 20 日, 深信服大云售前专家 YJ 在信服云《云集技术学社》系列直播课上进行了《容器技术和 Docker 介绍》的分享, 详细介绍了容器技术的发展、以 Docker 为代表的容器技术生态以及容器技术的应用场景 。 以下是他分享内容摘要, 想要了解更多可以关注 ” 深信服科技 ” 公众号观看直播回放 。

文章插图
Docker 由 RunC、Containerd、Docker Engine、Docker Compose、Docker Swarm 等部分组成:
RunC(low-level ) 是一个轻量级的工具, 用来运行容器, 也是标准化的产物, 是在围绕容器格式和对运行时制定的一个开放的工业化标准 。
Containerd(high-level)是容器虚拟化技术, 从 Docker 中剥离出来, 形成开放容器接口(OCI)标准的一部分, 起到承上启下的作用, 对上接受命令参数的内容, 对下调用 RunC 实际的操作容器服务 。
Docker Engine 是执行 Docker 标准的后台应用程序(Dockerd), 用来构建镜像, 运行容器, 管理网络和存储等 。 它的 API 不遵循 CRI 标准 。 任何第三方平台与其集成必须开发对接其接口(Docker-shim) 。
Docker Compose 是基于 YAML 规范使用脚本来定义和简化多容器部署的工具 。 Docker Swarm 是 Docker 集群管理平台 。
Docker 的核心概念是镜像, 镜像含有启动 Docker 容器所需的文件系统结构及内容 。 可以说, 镜像是 Docker 设计精巧的、引爆容器技术的核弹 。
镜像有五个特性:一是封装, Docker 镜像将应用及其类库, 配置、环境等依赖全部打包紧耦合到一个文件实现应用迁移, 让应用到任意环境都可开箱并立即正常运行 。
二是分层, Docker 镜像由基础层(base image)和应用层构成, 而应用层可以根据对底层的依赖程度, 抽象出不同的基础层 。
三是共享, 基于分层文件系统, 不同的层可以被共享和依赖, 使得镜像通过标准 API 操作进行复制时, 只需要获取数据不同的层即可, 不需要所有依赖都被复制(底层依赖已经存在情况下, 会通过层的 UUID 进行校验) 。
四是轻量, 多个容器通过同一个镜像创建时, 不需要对镜像进行复制(对比虚拟机), 只需要将镜像层挂载为只读, 然后再加上一个可读写层即可 。
五是写时复制, 只有在可读写层的数据变化且需要保存写入新的层的时候, Docker 镜像才会生成新的镜像层 。 写时复制与分层机制可以大大减少磁盘空间的占用和容器启动时间 。
Docker 基于镜像去创建容器的具体步骤是:首先将 BaseImage 内容作为容器的 rootfs 以只读方式挂载 。 然后 Docker Daemon 继续解析镜像的其它层, 如 ADD, ENV 等信息, 对容器的运行时环境进行初始化 。 初始化后 Docker Daemon 继续解析镜像文件, 执行 CMD 信息中的命令并执行, 使得容器进入运行态 。
【容器技术和Docker介绍】Docker 在计算时会用到 Namespace 和 Cgroup 技术, Docker 会基于 Namespace 技术进行包括网络、文件系统和环境等在内的资源隔离 。 Linux Cgroup 就是 Linux 内核中用来为进程设置资源限制的一个重要功能, 全称是 Linux Control Group, 主要作用是限制一个进程能够使用的资源上限, 包括 CPU、内存、磁盘、网络带宽等等 。
镜像仓库是用来存储和分发容器镜像的应用 。 企业和个人对产出的镜像文件可以集中管理, 便于进行权限控制、安全控制、能力共享、生态建设等 。 镜像仓库可以对基于容器镜像的应用进行统一的版本, 分发管理等 。 镜像仓库可以简化和优化企业基于容器的开发测试管理和集成, 运维流程等(如 CICD) 。
- 一个人生活在甜美之中,宁静蓝+活力黄,清新宜居,满满爱和美好
- 狗狗的宽恕心、同情心和嫉妒心的体现
- 狗狗的忠实和善解人意让你不可思议
- 狗狗究竟有没有思维和联想才能呢?
- 如何通过运动和饮食减肥?
- 呼和浩特市旅游景点排名 呼和浩特十大景点排行榜
- 呼和浩特 景点 呼和浩特十大春季旅游景点
- 呼和浩特市gdp2019 2020年呼和浩特市各区GDP排行榜
- 呼和浩特的著名建筑物 呼和浩特十大地标建筑
- 内蒙古富豪榜2020排行榜 2020呼和浩特八大富豪排行榜
特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
