Skip to content

1.0. System

What do you need before starting?

  • A Unix-like shell on Linux, macOS, or WSL2.
  • Git and a working internet connection for the initial clone and dependency/model downloads.
  • A container engine only when you reach the gateway wrapper in Chapter 5.
  • At least 12 GB of free memory and 20 GB of free disk for the full local Kubernetes, model, image, and observability path.
  • Basic Python, Git, and terminal familiarity.

The documentation and deterministic Python tests need fewer resources. Complete that checkpoint before deciding whether your machine should run the full stack.

Which operating systems are supported?

Linux is the validated reference environment. macOS and WSL2 are best-effort development environments that use the same shell task vocabulary, with these practical differences:

  • On macOS, run an open-source Linux VM/container runtime such as Podman machine or Colima before using Docker-compatible commands.
  • On WSL2, keep the repository inside the Linux filesystem for better file-system performance.
  • Native Windows PowerShell commands are not maintained by this course.
  • qwen3:4b performance varies widely between CPU, Apple Silicon, and Linux GPU setups; no accelerator is required for tests.

If a platform-specific command fails, include uname -a, mise doctor, the relevant staged doctor output, and the failing command in a documentation issue. Do not infer full platform support from installation success alone.

Why does the course use mise?

mise pins CLI versions and provides one task vocabulary for developers, hooks, and CI. The root mise.toml includes the docs/Python tools plus Docker/Kubernetes/GCP validation tools such as k3d, kubectl, Helm, Helmfile, Skaffold, OpenTofu, kubeconform, and Trivy.

That does not install system services such as Git, a container engine, or Ollama. It does prevent every learner from assembling different CLI versions by hand.

How do you install mise safely?

Choose a supported installer from the mise installation guide, then activate it for your shell. The upstream script path is concise but should still be inspected before execution:

curl -fsSL https://mise.run | less
curl -fsSL https://mise.run | sh

For Bash:

echo 'eval "$(~/.local/bin/mise activate bash)"' >> ~/.bashrc
exec bash
mise --version

Use the matching activation command for Zsh or Fish. A package-manager installation is equally valid.

How do you install the repository toolchain?

git clone https://github.com/MLOps-Courses/agentops-open-course.git
cd agentops-open-course
mise install

mise install installs the exact versions declared in mise.toml. Automatic installation during tasks is disabled so CI and hooks fail clearly when a required tool is absent.

How do you install project dependencies?

mise run install

This synchronizes the locked Zensical, Python agent, and MLflow-server environments and installs Lefthook. It downloads dependencies but does not call a model, start a container/cluster, or create cloud resources.

Which prerequisite tier should you install?

Do not require Kubernetes or cloud tooling to read the course or run Python tests. Validate only the tier you are about to use:

mise run doctor           # base docs/Python path
mise run doctor:model     # adds Ollama and qwen3:4b
mise run doctor:gateway   # adds the container-backed host gateway
mise run doctor:platform  # adds k3d/kubectl/Helm/Skaffold
mise run doctor:gcp       # optional GCP CLI and ADC path

These are independent diagnostics, not one monolithic health check. Pair the base doctor with mise run check:core: that gate validates the course, data, Python, shell, workflow, link, and license contracts without invoking Docker, a model, a cluster, or cloud resources. The complete maintainer gate, mise run check, additionally renders and validates all infrastructure and is required from Chapter 5 onward. Run both doctor:model and doctor:gateway for the complete Chapter 5 host path; add doctor:platform or doctor:gcp only when those chapters require them.

How do you verify the system checkpoint?

mise doctor
mise current
mise run doctor
mise run check:core
mise run build

Continue when mise reports a healthy installation, the base doctor and core gate pass, and Zensical builds the site without warnings. If any command fails, fix the local toolchain before adding a model, containers, or provider credentials.