Simple, minimal Docker image with iperf3
The image is built FROM scratch and contains only the iperf3 binary and its shared-library
dependencies - no shell, no package manager. It's published for linux/amd64, linux/arm64 and
linux/arm/v7, and runs as the non-root user 65534 (nobody).
Image by default starts as iperf3 server on port 5201:
docker run -it --rm \
-p 5201:5201 \
-p 5201:5201/udp \
ei99070/docker-iperf3
To run as iperf3 client, use the following:
docker run -it --rm \
-p 5201:5201 \
-p 5201:5201/udp \
ei99070/docker-iperf3 \
-c <server-ip-address>
You can use any iperf3 parameters just by adding them after the image name.
The image is also published to the GitHub Container Registry:
docker run -it --rm \
-p 5201:5201 \
-p 5201:5201/udp \
ghcr.io/pedrolamas/docker-iperf3
docker exec ... sh will not work.65534. If you need to bind a privileged port (below 1024), add
--user 0 to run as root instead.Published images are signed with cosign using keyless (OIDC) signing, and include SLSA build provenance and an SBOM:
cosign verify ghcr.io/pedrolamas/docker-iperf3:latest \
--certificate-identity-regexp '^https://github.com/pedrolamas/docker-iperf3/' \
--certificate-oidc-issuer https://token.actions.githubusercontent.com
docker buildx imagetools inspect ghcr.io/pedrolamas/docker-iperf3:latest --format '{{ json .SBOM }}'
MIT
Content type
Image
Digest
sha256:6f2456e83…
Size
2.4 MB
Last updated
12 days ago
docker pull ei99070/docker-iperf3