Glossary
Docker and compose-stack terminology for homelab self-hosters.
Canonical version maintained at selfhostrealm.com.
C
- Compose File containers #
-
A YAML manifest describing one or more services, their images, volumes, networks, and dependencies. "docker compose up" reads it and creates everything.
- Container containers #
-
A running instance of an image. Has its own filesystem layer on top of the image, its own process tree, and its own network namespace, but shares the host kernel.
D
- Docker Network networking #
-
An isolated L2 segment Docker creates for containers. Containers on the same network reach each other by service name. Default "bridge" allows DNS resolution; the legacy "host" mode shares the host network stack.
H
- Healthcheck containers #
-
A command Docker runs periodically inside a container to determine if it's healthy. Composes can wait on dependencies to be healthy before starting downstream services.
I
- Image containers #
-
An immutable filesystem snapshot that containers are instantiated from. Pulled from a registry (Docker Hub, GHCR, lscr.io). Each image has one or more tags pointing at versions.
- Image Digest (Pin) containers #
-
The immutable SHA-256 identifier for an image. "image: app:latest@sha256:abc..." pins to an exact build even if "latest" moves. The right way to lock dependencies for stateful services.
M
- Macvlan networking #
-
A Docker network driver that gives a container its own MAC address on the host LAN. Useful when an app needs to broadcast/discover on the same L2 (Home Assistant SSDP, AirPlay receivers).
R
- Restart Policy containers #
-
Per-container setting that controls what happens on crash or host reboot. "unless-stopped" is the right default for services; "on-failure" for batch jobs.
- Reverse Proxy networking #
-
A server that fronts your containers, terminating HTTPS and routing by hostname. Traefik, Caddy, and nginx-proxy-manager are the popular options in homelabs.
V
- Volume containers #
-
Persistent storage that survives container restarts. Docker-managed named volumes live under /var/lib/docker/volumes; bind mounts point to a host path you choose. Use bind mounts for things you back up.