Project Moby
Neependra Khare, CloudYuga
@neependra
Docker != Moby
• docker/docker -> moby/moby
• More than a simple rename
• Nothing changes for Docker releases (Docker CE/
EE)
• docker is for developers
• moby is for system architects
How Docker is being built
Moby
“Moby is a framework to assemble specialized container systems”
• A library of containerised component
• OS
• Container runtime
• Orchestration
• Infrastructure
• Storage, networking etc
• Tools to assemble to create runnable artifacts for different platform
• Bare Metal
• VM images
• Executables for Linux, Mac and Windows
• All of the components are containers
• Uses containerd as default container runtime
Moby Projects
• infrakit
• containerd
• runc
• notary
• linuxkit
• datakit
• vpnkit
• swarmkit
moby-tool
• The moby-tool builds systems
• by assembling different containerised
components
• LinuxKit is first use case
moby-tool
moby-tool
Boot scripts
Kernel
Configuration Containers
Service Containers
ISOs
AMIs
……
Example Configuration file
kernel:
image: "linuxkit/kernel:4.9.34"
cmdline: "console=ttyS0 console=tty0 page_poison=1"
init:
- linuxkit/init:36c56f0664d49c5a6adc1120d1bf5ba6ac30b389
- linuxkit/runc:291131ec026430371e7c36165c3f43734fbc2541
- linuxkit/containerd:1e3e8f207421de8deac8cedc26a138d6b1661a0d
onboot:
- name: dhcpcd
image: "linuxkit/dhcpcd:6c1ca76dbf808d5c27d10cbf22a8d4399be5c8ae"
command: ["/sbin/dhcpcd", "--nobackground", "-f", "/dhcpcd.conf",
"-1"]
services:
- name: getty
image: "linuxkit/getty:6d35e3fe138aaeaf099b5b4f31b3f12ba725cb49"
env:
- INSECURE=true
trust:
org:
- linuxkit
moby-tool Configuration
Reference
https://github.com/moby/tool/blob/master/docs/yaml.md
• kernel
• init
• onboot
• services
• files
• trust
• Image Specification
• Mount Option
Demo
Security
• Only contains what we want
• Modern Kernel
• Read-only root file-system
• Containerized Service with minimal privileges
References
• http://mobyproject.org
• https://github.com/moby/tool
• https://github.com/linuxkit
• Online Docker Meetup
• https://www.youtube.com/watch?v=nhoEVCMz7Qk
Thank you !!
@neependra

Project Moby