Read OSS

apple/container

6 articles

Prerequisites

01

Architecture and Navigation Guide: How apple/container is Organized

A high-level tour of the apple/container project — what it does, why it uses one VM per container, and how the four-layer architecture fits together.

02

The XPC Communication Layer: How Processes Talk to Each Other

A deep dive into the custom XPC abstraction that connects every process in apple/container.

03

Container Lifecycle: From `container run` to Exit

A complete end-to-end trace of what happens when you run `container run`.

04

Networking and DNS: Virtual Networks, IP Allocation, and Name Resolution

A deep dive into apple/container's networking subsystem — virtual networks, IP allocation, and custom DNS servers.

05

The Plugin System and launchd Integration

How apple/container's plugin architecture works end to end — from config.json discovery to launchd bootstrap.

06

The Build Subsystem: gRPC, BuildKit, and Image Creation

How `container build` works and why it uses a completely different communication model from the rest of the system.