Skip to main content

Prerequisites

Everything you need to install and verify before the first lab. Read this before Day 1.


Knowledge Prerequisites

You don't need an ML background — the course teaches every AI concept from scratch. You do need to be comfortable with the following:

AreaWhat you need
ContainersBuild, run, volumes, networks; reading and writing a compose.yaml
Git & GitHubClone, commit, push; basic CI/CD concepts
Command lineFluent on macOS Terminal or Windows PowerShell/WSL2 terminal
PythonBasic reading and editing of Python scripts (agent/app labs are Python-first)

System Requirements

All tools used in this course are free and open source. Docker Desktop is not required.

RequirementDetails
Container runtimeAny one of: Rancher Desktop (cross-platform), OrbStack (Mac), Colima (Mac/Linux), or Podman. Docker Desktop works too but is not required.
Operating systemApple Silicon (M1–M4) or Windows 11 + WSL2 recommended. Intel Mac works for the lighter labs.
OllamaInstalled natively on your host — not in a container. This is critical; see The GPU Reality.
RAM16 GB minimum. 32 GB is comfortable for running multiple services simultaneously.
Disk30 GB free (models + images + layer cache).
CPU4 cores minimum.
VS CodeWith the Docker or Dev Containers extension.
GitHub accountActive account for pushing images to GHCR.
Container registryDocker Hub, GHCR, or Quay — any one works.
Windows + NVIDIA GPU

If you have a Windows machine with an NVIDIA GPU, the NVIDIA Container Toolkit lets you run the model server inside a container with full GPU acceleration. The course covers this path in the GPU track. Without a GPU, the CPU-vLLM track covers the same learning at lower throughput.


Quickstart: Install Rancher Desktop + Ollama

If you're starting from scratch on macOS, these three commands get you to a working environment.

1. Install Rancher Desktop (the container runtime)

brew install --cask rancher

Launch Rancher Desktop from Applications, wait for it to finish initializing (the tray icon turns green), then verify:

docker version

Expected output (versions may differ):

Client:
Version: 29.x.x
...
Server: Docker Engine - Community
Engine:
Version: 29.x.x

2. Install Ollama (the model server — natively on the host)

brew install ollama

Start the Ollama service:

ollama serve &

Verify it's running:

curl http://localhost:11434/

Expected output:

Ollama is running

3. Pull the course dev model

ollama pull qwen2.5:1.5b

Expected output (model is ~986 MB):

pulling manifest
pulling azc9e5e2e492... 100% ▕████████████████████▏ 986 MB
verifying sha256 digest
writing manifest
success

4. Verify the end-to-end wiring

Run a quick container that calls the natively-running Ollama — this proves the host.docker.internal bridge that every lab depends on:

docker run --rm curlimages/curl \
curl -s http://host.docker.internal:11434/api/generate \
-d '{"model":"qwen2.5:1.5b","prompt":"Say hello in one sentence.","stream":false}' \
| grep -o '"response":"[^"]*"'

If you see a "response":"..." line, your environment is ready. If the request times out, see the troubleshooting note below.

Troubleshooting: Ollama not reachable from container

By default Ollama listens only on 127.0.0.1:11434. For containers to reach it you need it to listen on all interfaces. Stop Ollama, set the environment variable, and restart:

pkill ollama
OLLAMA_HOST=0.0.0.0 ollama serve &

Or add OLLAMA_HOST=0.0.0.0 to your shell profile and restart Ollama.


What's Next

Before the first lab, read The GPU Reality — it explains why the model server runs natively on Mac and how containers reach it. This is the single most important setup concept in the course.