Lab Host — macOS
Lab Host — macOS
Prepare a macOS machine as the Containerlab control host: virtualization, container runtime, resources, and networking gotchas before you deploy topologies.
Note
Stub chapter — outline for the lab-platform on-ramp. Expand with exact install commands and verified versions as you freeze a lab baseline.
Goals
- Run Docker-compatible containers with enough CPU/RAM for FRR + Linux nodes
- Install Containerlab and pull free lab images
- Understand macOS-specific limits (VM layer, file sharing, port publishing)
Prerequisites
- Recent macOS with virtualization support (Apple Silicon or Intel)
- Admin rights for Docker/Colima and Homebrew
- Disk space for images (plan multi‑GB for NOS images)
Virtualization and container runtime
Options
| Approach | Notes |
|---|---|
| Docker Desktop | Simple GUI; license/terms apply for some orgs |
| Colima + Docker CLI | Lightweight VM; common for CLI-first labs |
| Lima / other | Possible; keep one path documented for this book |
Checklist
- Install runtime and confirm
docker version/docker info
- Allocate CPU and memory for multi-node labs (start modest; scale up)
- Confirm architecture (
linux/arm64vslinux/amd64) matches images you pull
Install Containerlab
- Prefer the Containerlab install docs for the current macOS method
- Verify:
containerlab version
- Confirm the binary can talk to your Docker socket
Networking notes on macOS
- Lab nodes run inside a Linux VM — host
localhostport maps differ from native Linux
- Bridge and macvlan behaviors are not identical to bare-metal Linux
- Prefer topologies that do not assume bare-metal SR-IOV or host netns tricks on day one
First smoke test
- Deploy a two-node FRR or Linux topology from Containerlab examples
containerlab inspect/docker ps— nodes up
docker execinto a node;pingthe peer
- Destroy the lab; confirm no orphan containers
Next
- Parallel path: Lab Host — Linux
- Then Containerlab Fundamentals