Docker is the container platform. Nearly every DevOps workflow uses it to package, ship and run applications. I use Docker to:
- Package apps with their dependencies into portable images
- Run isolated containers across homelab and production
- Persist state with volumes and connect containers with networks
- Ship images via registries (Docker Hub) into deployment pipelines
- And much more
Docker konular#
- docker-kurulum-hardening-debian
- manage-docker-as-non-root-user
- docker-containers-images
- docker-volumes
- docker-build
- optimize-container-images-with-multi-stage-builds
- docker-network
- docker-exec-shell
- docker-logs
- docker-compose-basic
- var-olan-volume-uzerine-docker-compose
- docker-publish
- docker-kurulum-hardening-rocky
- docker-distroless-container-images
Temeller#
- docker-containers-images = Container ve image kavramları,
docker run,docker ps,docker stop - docker-volumes =
docker volume create/ls/inspect, Ghost örneği ile kalıcı veri - docker-exec-shell =
docker exec, interactive shell (-it /bin/sh) - docker-network =
--network none, custom bridge network, Caddy load balancer - docker-logs =
docker logs -f --tail,docker stats,docker top, resource limits
Build ve Publish#
- docker-build = Dockerfile yazma,
docker build -t, Go/Python server dockerize etme,ENV PORT - optimize-container-images-with-multi-stage-builds = Multi-stage build ile Go (~800MB+ → 15-20MB) ve TypeScript image optimizasyonu,
COPY --from - docker-distroless-container-images = distroless image hiyerarşisi (
static→base→cc→ runtimes),FROM scratchkarşılaştırması,trivyile CVE taraması,:nonroot/:debugtag’leri, Chainguard/Chisel alternatifleri - docker-publish = Docker Hub’a
docker push/pull, tag (latestvs semver), deployment pipeline
Compose ve Operasyon#
- docker-compose-basic =
docker compose up/down/ps/logs/build/exec - var-olan-volume-uzerine-docker-compose = var olan volume’ü
external: trueile compose’a bağlama - docker-kurulum-hardening-debian = Debian’a güvenli kurulum,
daemon.jsonhardening, iptables/UFW notları - docker-kurulum-hardening-rocky = Rocky’ye güvenli kurulum, firewalld + SELinux notları, Podman rootless karşılaştırması,
daemon.jsonhardening - manage-docker-as-non-root-user =
dockergrubu, rootless notları, systemd ile boot’ta başlatma