mycontainer - a simple container runtime in Go
This is a minimal container runtime built in pure Golang, designed for learning purposes. It demonstrates how container technologies like cgroups, namespaces, OverlayFS, and network isolation work under the hood - without relying on Docker or containerd.
TBD
TBD
- Linux (with OverlayFS and cgroups v1 or v2)
- Go 1.23+
- Root permissions (
sudo
) for namespaces, mounts, etc.
TBD
This project was built to understand:
- How containers work without Docker
- Linux kernel primitives: namespaces, cgroups, veth pairs
- Filesystem isolation using OverlayFS
- Minimal container orchestration and lifecycle