Skip to content
Latchkey

Is wget Installed? Runner Images and Install

wget ships on many CI runner images but is missing from minimal containers like slim Debian or base Alpine, where you must install it.

Do not assume wget exists. Full Ubuntu runners usually have it; slim and Alpine images often do not, and a missing wget fails the step with command not found.

What it does

wget is a separate package, not part of every base image. Large CI runner images (such as the standard GitHub-hosted Ubuntu runners) generally include it. Minimal containers used in jobs (debian:slim, alpine) frequently omit it, or ship BusyBox wget with a reduced flag set.

Common usage

Terminal
# check first
command -v wget || echo "wget missing"
# Debian/Ubuntu
apt-get update && apt-get install -y wget
# Alpine
apk add --no-cache wget

Options

Imagewget availability
Standard hosted Ubuntu runnerUsually preinstalled
debian:slimOften absent; apt-get install wget
alpineAbsent or BusyBox wget; apk add wget
busyboxProvides a limited wget (fewer flags)

In CI

Guard download steps with command -v wget and install if missing, or pin a base image that includes it. On Alpine, apk add wget replaces BusyBox wget with GNU wget so flags like --content-disposition and recursive options behave as documented.

Common errors in CI

wget: command not found (or /bin/sh: wget: not found on Alpine) means the package is absent; install it or use curl. BusyBox wget rejecting a GNU-only flag with "wget: unrecognized option" means you have the BusyBox build; install GNU wget with apk add wget.

Related guides

Run this faster and cheaper on Latchkey managed runners. Start free →