热门

从零构建 Docker

Build your own Docker

Docker 彻底改变了软件部署方式。在这个挑战中,你将学习 Linux 容器的核心技术,包括 namespace 隔离、cgroups 资源限制、联合文件系统等,最终实现一个简化版的容器运行时。

支持的语言

ruRust
goGo
cC
cpCpp
挑战进度52 阶段

预计时间

20-40 小时

难度范围

入门 - 困难

已有学习者

2,000+

技术标签

容器NamespaceCgroupsLinux

你将学到什么?

  • 理解 Linux Namespace 的隔离机制
  • 掌握 Cgroups 资源限制
  • 实现联合文件系统
  • 理解容器镜像的分层原理

前置要求

  • 熟悉 Linux 系统编程
  • 了解进程管理
  • 了解文件系统基础

学习路径

13 个阶段

基础

(3)
1

运行程序

2

文件系统隔离

3

进程隔离

Namespaces

(4)
1

PID Namespace

2

Mount Namespace

3

Network Namespace

4

User Namespace

Cgroups

(3)
1

内存限制

2

CPU 限制

3

进程数限制

镜像

(3)
1

OverlayFS

2

镜像分层

3

拉取镜像

AI 演进导读

我们的 AI 引擎会将源码的 Git 演进历史可视化,带你从「第一行核心代码」开始, 逐步理解每个设计决策背后的思考过程。不只是知道「是什么」,更要理解「为什么」。