Files

65 lines
2.1 KiB
Markdown

---
title: Docker
description: Tool overview for Docker as a container runtime and packaging platform
tags:
- docker
- containers
- infrastructure
category: tools
created: 2026-03-14
updated: 2026-03-14
---
# Docker
## Summary
Docker is a container platform used to package and run applications with their dependencies in isolated environments. In self-hosted systems, it is often the default runtime for lightweight service deployment and reproducible application stacks.
## Why it matters
Docker reduces packaging inconsistency and makes service deployment more repeatable than hand-built application installs. It also provides a practical base for Compose-managed stacks in small to medium self-hosted environments.
## Core concepts
- Images and containers
- Registries as image distribution points
- Volumes for persistent data
- Networks for service connectivity
- Compose for multi-service application definitions
## Practical usage
Docker commonly fits into infrastructure as:
```text
Image registry -> Docker host -> containerized services -> reverse proxy or internal clients
```
Typical uses:
- Hosting web apps, dashboards, automation tools, and utility services
- Running small multi-container stacks with Compose
- Keeping application deployment separate from the base OS lifecycle
## Best practices
- Pin images intentionally and update them through a reviewed process
- Use named volumes or clearly documented bind mounts for state
- Put multi-service stacks under Compose and version control
- Keep ingress and persistence boundaries explicit
## Pitfalls
- Treating containers as ephemeral while silently storing irreplaceable state inside them
- Publishing too many host ports directly
- Using `latest` everywhere without a maintenance workflow
- Running every unrelated workload inside one large Compose project
## References
- [Docker: Docker overview](https://docs.docker.com/get-started/docker-overview/)
- [Docker: Networking overview](https://docs.docker.com/engine/network/)
- [Docker: Volumes](https://docs.docker.com/engine/storage/volumes/)
- [Compose Specification](https://compose-spec.io/)