Docker for macOS
Aniketh Girish
Abstract
-
The need of docker running in a foreign OS?
(since there is docker for macOS and windows already!)
- In respective of the research project?
- In respective of the docker on macOS?
Docker for macOS (current)Architecture
Docker for macOS (proposed) architecture.
(src: docker medium post)
Preparation of the port.
API structure: Top to Bottom
A. Platform-level port
B. Runtime level port
C. The system features port
Apart from exposing features like chroot, exposing mounting options and establishing ociSpec use for darwin the majority work for the port relied on the porting of Libnetwork, Libcontainerd, moby/buildkit modules.
Few other major changes
- ‘sysconf‘ for Go
- libcontainerd changes
- libnetwork changes
Ported features.
Docker commands support on macOS.
Work in Progress
-
containerd-shim process is remained(#11)
Work in Progress
-
cannot run alpine image (#10)
-
Integration test with Travis ci (#2)
Future suggestions
Improvement of the filesystem support: Improve VFS to properly mount and unmount container filesystems.
Improvement of the libnetwork port: A bridge similar to docker0 between gRPC clients and servers.
Code refactor
Demo!
Questions?
Thank You!
anikethgireesh@gmail.com
Docker for macOS
By Aniketh Gireesh
Docker for macOS
- 1,042