Go
Focker in Go
这里我们参考 Gocker 的实现,实现我们的 Focker。
用 Gocker 创建的容器拥有自己的以下命名空间(请参见run.go
和network.go
):
- File system (via
chroot
) - PID
- IPC
- UTS (hostname)
- Mount
- Network
当创建 cgroups 来限制以下内容时,除非您在 gocker run
命令中指定了 --mem
,--cpus
或 --pids
选项,否则接续器将使用无限的资源。这些标志分别限制了容器可以使用的最大 RAM,CPU 内核和 PID。
- Number of CPU cores
- RAM
- Number of PIDs (to limit processes)