Kodeloka
  1. Kodeloka
  2. Kelas Docker
  3. Materi

Materi tertulis · 21 modul

Materi Docker

Kelas Docker berbahasa Indonesia: 21 modul tentang kontainer, perintah dasar, jaringan, volume, Docker Compose, Dockerfile, layer dan cache, multi-stage build, BuildKit, registry, dan keamanan kontainer.

Fundamentals

  1. 1. Introduction to Containerization & DockerKonsep dasar kontainerisasi, sejarah evolusi industri lunak, serta 4 pilar keunggulan Docker.

Architecture

  1. 2. Physical Servers vs Virtualization vs ContainersEvolusi infrastruktur dari fisik (Bare Metal), Virtual Machine (Hypervisor), hingga Kontainer Docker.
  2. 3. Software Processes & Linux System IsolationBagaimana Linux Kernel mengisolasi proses menggunakan Namespaces (PID, NET, MNT) dan Control Groups (cgroups).
  3. 4. Docker Architecture & Core EcosystemArsitektur Client-Server Docker: Docker Daemon (dockerd), Docker CLI, REST API, Docker Objects, & Docker Hub.

Fundamentals

  1. 5. Docker Installation & Environment SetupInstalasi Docker Engine di Linux Server (Ubuntu), Docker Desktop di Local Machine, & Setup AWS EC2.
  2. 6. Basic Docker Commands & Container LifecyclePerintah praktis manajemen kontainer: pull, run, ps, stop, start, exec, logs, rm, & inspect.

Networking

  1. 7. Port Forwarding & Container Networking BasicsKonsep Port Forwarding (-p host_port:container_port), alokasi IP privat kontainer, & pengujian cURL.
  2. 8. Docker Networking Modes & Custom DriversMode jaringan Docker: Bridge, Host, None, Overlay, serta pembuatan Custom User-Defined Network dengan DNS resolution.

Storage

  1. 9. Data Persistence: Volumes & Bind MountsMengatasi sifat Ephemeral kontainer dengan Named Volumes dan Bind Mounts untuk penyimpanan data permanen.

Fundamentals

  1. 10. Environment Variables & App ConfigurationsPassing variabel lingkungan (-e KEY=VALUE, --env-file) untuk konfigurasi dinamik kredensial database & app settings.

Compose

  1. 11. Introduction to Docker ComposeOrkestrasi multi-container dengan file docker-compose.yml, struktur YAML, & perintah dasar compose.
  2. 12. Advanced Docker Compose & Service DependenciesManajemen ketergantungan layanan (depends_on), Healthchecks, Restart Policies, & Service Scaling.
  3. 13. Compose Modern - Watch, Profile & Depends OnAlur pengembangan dengan sinkronisasi berkas otomatis, profil lingkungan, health check sebagai syarat startup, dan berkas compose berlapis.

Fundamentals

  1. 14. VS Code Integration & Docker Developer ToolsPenggunaan Ekstensi Docker di VS Code, Dev Containers, & inspection file sistem kontainer langsung dari IDE.

Dockerfile

  1. 15. Writing Dockerfiles & Building Custom ImagesInstruksi dasar Dockerfile: FROM, WORKDIR, COPY, RUN, ENV, EXPOSE, CMD, & pembuatan image dengan docker build.
  2. 16. Docker Image Layers & Build CachingMemahami arsitektur Layer Image, mekanisme caching Docker, optimasi urutan COPY, & file .dockerignore.
  3. 17. CMD vs ENTRYPOINT & Multi-Stage BuildsPerbedaan CMD vs ENTRYPOINT, bentuk Shell vs Exec form, & teknik Multi-Stage Build untuk memperkecil ukuran image.
  4. 18. BuildKit & Buildx - Build Modern yang CepatCache mount, secret mount, build paralel, dan image multi-arsitektur dengan mesin build generasi baru.

Fundamentals

  1. 19. Publishing Images to Docker Hub & Image RegistryWorkflow publikasi image: docker login, tagging image, docker push, private registries, & vulnerability scanning.
  2. 20. Keamanan Kontainer & Pemindaian KerentananMengecilkan permukaan serangan: pengguna non-root, base image minimal, rootless mode, capability, dan pemindaian otomatis di CI.

Architecture

  1. 21. Production Deployment & DevOps Best PracticesPraktik terbaik DevOps: User Non-root, Pembatasan Memori/CPU, Logging Drivers, & Integrasi CI/CD Pipeline.