Skip to content

Latest commit

 

History

History
9 lines (5 loc) · 517 Bytes

File metadata and controls

9 lines (5 loc) · 517 Bytes

mydocker

《自己动手写Docker》一书的复刻,使用Go modules(Go 1.11+)构建依赖。

在原书代码基础上更改:

  • 添加了对USER_NAMESPACE的支持,Archlinux内核虽然开启了对USER_NAMESPACE的支持,但默认只限于root用户,使用sudo sysctl kernel.unprivileged_userns_clone=1 即可允许普通用户运行无特权容器。
  • 在启动容器前,使用sudo mount --make-private -t proc proc /proc -o remount ,可避免容器进程对宿主机/proc挂载的破坏。