Running Docker Containers as Non-Root (And Why You Should)
Running as root in containers is a security foot-gun. Learn the USER instruction and numeric UID/GID pattern.
All the articles with the tag "docker".
Running as root in containers is a security foot-gun. Learn the USER instruction and numeric UID/GID pattern.
Docker labels are free metadata for filtering, routing, and documentation. Learn label conventions and leverage them with filters and tools.
Layer caching is your build's BFF. Learn why copying files early kills the cache and how to fix it.
Decode Docker exit codes: 0 (success), 1 (app error), 125/126/127 (Docker errors), 137 (OOM), 143 (SIGTERM). Debug restarts in minutes.
Missing .dockerignore bloats build context, slows builds, and leaks secrets. Here's the one you should copy-paste.
Docker's default JSON logging driver writes unbounded logs to disk. Learn how to set log rotation and reclaim your storage.
PID 1 doesn't receive signals by default. Learn why Ctrl+C fails in containers and fix it with tini or exec form CMD.
daemon.json controls how the Docker daemon behaves — logging drivers, storage drivers, registry mirrors, and the options worth tuning.
Bridge, host, overlay, macvlan, and none — every Docker network mode explained with real use cases from beginner to production.
The -v and --mount flags for Docker volumes explained — bind mounts vs named volumes, read-only, propagation, and tmpfs options.
Move Docker images between hosts without a registry using docker save and docker load — air-gapped deployments made simple.
CMD and ENTRYPOINT both define what runs in a container but work differently — exec vs shell form, and how they interact when combined.