Local AI Agents · Running models locally · Lesson 3 of 4

Lab: installing a local runtime

The setup lab — install Ollama through the official path for your platform, pull a small model, and confirm it runs, with the safety notes for what the installer actually does, where models land on disk, and the real disk-space cost, before Lesson 4's execution-and-reflection lab captures evidence from it.

Lesson · 30–45 minutes · Text-first

By the end, you can

  • Install Ollama through its official install path for a stated platform, and verify the CLI is working (LA-7).
  • Explain what the installer does and does not do — permissions requested, where files land, what runs automatically — before running it (LA-7).
  • Pull a small local model and locate where it actually landed on disk, accounting for real free-space cost (LA-7).

Before you start

This is Lesson 3 of 4, the setup lesson in this module's lab split — the blueprint calls for install labs to be split into setup, execution and reflection lessons rather than one long one, so this lesson stops once Ollama is installed and has produced one real response; Lesson 4 covers running real prompts and capturing latency and memory evidence from it. You need a real machine with terminal (macOS/Linux) or PowerShell (Windows) access, an internet connection, and a few free gigabytes of disk space — this lesson tells you exactly how much, for exactly the small model it has you pull. No paid service, account or subscription is required anywhere in this lab; everything here runs entirely on your own machine.

What the installer actually does, and what it doesn't

Before running anything, it's worth knowing what each platform's installer actually does — this is the same safe-setup discipline this course applies elsewhere to workspace hygiene and least privilege, applied here to a new piece of software rather than an agent's own permissions.

On macOS, Ollama's own documentation describes the preferred method as mounting `Ollama.dmg` and dragging the app into the system-wide Applications folder; on first launch, "the Ollama app will verify the `ollama` CLI is present in your PATH, and if not detected, will prompt for permission to create a link in `/usr/local/bin`" — a narrow, visible request, not a silent system change. On Windows, the documentation is explicit that "the Ollama install does not require Administrator, and installs in your home directory by default" — it does not need, and does not ask for, elevated system permissions. On Linux, the one-line install script downloads and installs the binaries directly; the documentation's own optional next step — setting Ollama up as a systemd service running under a dedicated `ollama` user — is recommended for a machine that should keep the server running persistently in the background, but is not required just to try Ollama out, which is all this lab asks of you.

What none of these installers do: none of them require a paid account, and running the server does not expose anything beyond your own machine by default — Ollama's own Windows documentation, for example, notes that its API "will be served on http://localhost:11434," a local address on your own machine. Once installed, the biggest real resource cost is not permissions but disk space: both the macOS and Windows documentation warn in near-identical wording that "you'll need additional space for storing the Large Language models, which can be tens to hundreds of GB in size" once you start pulling larger models than the one this lab uses.

Install Ollama for your platform

Ollama's own README documents the same install commands, consistently, across its per-platform docs pages. Pick the one for your machine:

Once installed, verify it: run `ollama` alone in a terminal. Ollama's own README describes what should happen — "You'll be prompted to run a model or connect Ollama to your existing agents or applications." Seeing that menu is your confirmation the install worked. If `ollama` isn't found after install, open a new terminal window first — installers commonly need a fresh shell to pick up the PATH change — before treating it as a failed install.

Ollama's own FAQ documents where downloaded models are stored by default, and how to change it: macOS uses `~/.ollama/models`, Linux uses `/usr/share/ollama/.ollama/models`, and Windows uses `C:\Users\%username%\.ollama\models`. Setting the `OLLAMA_MODELS` environment variable on any platform changes that location — useful to know now, before you pull anything, if your default drive is short on space.

  • **macOS or Linux** — run this in a terminal: `curl -fsSL https://ollama.com/install.sh | sh`. (Or, on macOS only, download `Ollama.dmg` manually and drag the app to Applications instead.)
  • **Windows** — run this in PowerShell: `irm https://ollama.com/install.ps1 | iex`. (Or download and run `OllamaSetup.exe` manually instead.)

Pull a small model, and know where it went

This lab uses `llama3.2:1b` deliberately — Ollama's own library lists it at 1.3GB, small enough to download and try quickly, in contrast to the 4-5 GB, 7B-8B-class models this module's earlier lessons sized against a 16 GB machine.

1. Download it: `ollama pull llama3.2:1b`. 2. Confirm it's there: `ollama ls` should list `llama3.2:1b` among your downloaded models. 3. Run it: `ollama run llama3.2:1b`, then type a short message and read its reply. Leave the chat with `/bye` when you're done.

Your actual download time will depend entirely on your own connection — this lesson does not state one, because it genuinely varies. What should stay consistent across machines is the reported size close to the 1.3GB this lesson cites; if your `ollama pull` output shows a meaningfully different number, that is a cue to check the model's own current listing rather than assume this lesson's figure — Ollama's library can update a model's default files over time, which is exactly why this course pins a review date and a staleness window on figures like this one.

If something doesn't go to plan

You can remove what you pulled with `ollama rm llama3.2:1b`, freeing the disk space it used — a real, low-stakes rollback, not a destructive one, since nothing else on your machine depends on a model file being present. If the server itself seems stuck, `ollama stop llama3.2:1b` stops a running model without removing it. If you want to see what actually happened during a failed install or run, each platform documents its own log locations — macOS keeps `app.log` and `server.log` under `~/.ollama/logs`; Windows keeps the equivalent files under `%LOCALAPPDATA%\Ollama`. None of this lab's steps are destructive to anything outside what you just installed — if you decide not to continue with Ollama at all, each platform's own documentation also lists a full uninstall procedure, which this lesson does not require you to run, only to know exists.

Accessibility notes

This lesson is text-first, with no images, audio, video or downloadable artifacts. All install and CLI commands are given as plain inline text, readable and copyable by assistive technology and keyboard-only users without relying on a screenshot. The practice exercise's model answer sits behind a native disclosure control that is reachable and operable by keyboard and correctly announced by screen readers. The knowledge check uses native radio-button inputs with a visible question and options, and posts its result to a live status region so assistive technology announces the outcome without a page reload. This lab's own commands are run in the learner's own terminal or PowerShell application, outside this page — learners using a screen reader with their terminal should follow their own assistive-technology setup for that application, which this lesson does not attempt to instruct.

Practice

Install, pull and run — the lab itself

This lesson's practice is the lab, run for real on your own machine: install Ollama through the official path for your platform, pull the small llama3.2:1b model, run it once, and locate where it actually landed on disk. Work through each step below in order and record what you actually observed at each one — your own numbers and paths are the point, not a match to any single expected value.

  1. Install Ollama using this lesson's command for your platform (or the manual download), then run `ollama` alone in a terminal. Did the interactive menu this lesson described appear? If not, what does that tell you about where to look next (hint: this lesson's log-location note)?
  2. Run `ollama pull llama3.2:1b`. Record the reported download size once it finishes. Does it match this lesson's cited 1.3GB, closely enough that you'd call it the same figure, or does it differ enough that you'd want to note the discrepancy?
  3. Run `ollama ls` and confirm llama3.2:1b is listed. Then check your machine's free disk space before you'd pulled anything (if you noted it) versus now — roughly how much space did the pull actually cost you?
  4. Run `ollama run llama3.2:1b`, send it one short message, read its reply, and leave with `/bye`. Did it respond coherently? Roughly how long did the whole exchange take to feel complete to you, in plain terms (fast, slow, somewhere in between) — you'll get real numbers for this in Lesson 4.
  5. Using this lesson's storage-location table for your platform, locate the actual file(s) on disk for the model you just pulled. Does a file close to the expected size exist at that location?
Compare with a bounded first version

There is no single correct number here — the value of this exercise is that you actually ran each step and can describe what happened on your own machine, which is exactly the evidence-capture habit this module builds toward. What 'success' looks like at each step: the `ollama` menu appearing confirms the install and PATH setup worked; if it didn't, this lesson's log-location note (~/.ollama/logs on macOS, %LOCALAPPDATA%\\Ollama on Windows) is the right next place to look, not a reason to reinstall blindly. A pull size close to 1.3GB is expected; a meaningfully different number isn't necessarily wrong, but is worth noting as a possible library update since this course explicitly tells you to trust a live tool's own output over a fixed lesson figure when they disagree. `ollama ls` listing the model confirms the pull actually registered with Ollama, not just that a download happened; the free-space delta should land in the neighborhood of the reported download size, allowing for filesystem overhead. A working `ollama run` exchange that responds to your message and exits cleanly on `/bye` is the functional confirmation the model is usable; a rough, unmeasured sense of its speed is genuinely all this lesson asks for — Lesson 4 replaces that impression with an actual number. Finding the model file at the documented location for your platform (or wherever OLLAMA_MODELS points, if you set it) close to the expected size confirms you know where your own disk space is actually going before you pull anything larger.

Knowledge check

Try the idea

A learner runs `ollama pull llama3.2:1b` and the reported download size is noticeably different from this lesson's cited 1.3GB figure. What is the most reasonable conclusion, based on how this course treats time-sensitive figures?
Low-stakes practice only. This does not score, block progress or create a learner record.

Sources and limits

This lesson synthesises the sources below into a practical learning model. It is not a security standard, legal advice or a guarantee that any particular agent design is safe.

  1. macOSOllama. Documents macOS system requirements, the .dmg install method, CLI symlinking, and the note that models need additional disk space beyond the app itself.
  2. WindowsOllama. Documents Windows system requirements, the irm install command and OllamaSetup.exe, that installation does not require Administrator rights, and file storage locations.
  3. LinuxOllama. Documents the curl install script, manual tar.zst install, and the optional systemd service setup.
  4. ollama/ollama READMEOllama (GitHub). Documents the install commands for macOS, Windows and Linux together, and the interactive `ollama` menu.
  5. FAQOllama. Documents the default model storage location per platform and the OLLAMA_MODELS override environment variable.
  6. llama3.2 tag listingOllama. Lists llama3.2:1b as a 1.3GB download, the small model this lab pulls.
  7. CLI ReferenceOllama. Documents ollama pull, ollama ls, ollama run and ollama rm.