Lewati ke konten utama

F5 · Modul 02

Docker dari nol

33 langkah singkat, dari mudah sampai tantangan.

  1. Level 1

    Kenal

  2. Level 2

    Paham

  3. Level 3

    Terapkan

  4. Level 4

    Tantangan

  5. Level 5

    Pendalaman

Intinya

  • Image adalah berkas sistem beku yang dibangun dari Dockerfile, lapis demi lapis; container adalah image yang sedang berjalan, dibuang dan dibuat ulang kapan saja.
  • Urutan instruksi menentukan cache: salin requirements.txt dan pasang dependensi lebih dulu, kode belakangan; mengubah kode hanya membangun ulang lapisan terakhir.
  • Container terisolasi: port dibuka dengan -p, konfigurasi masuk dengan -e, data yang harus bertahan disimpan di volume.
  • Multi-stage: tahap pembangun memasang paket, tahap akhir hanya membawa hasilnya, dengan tag image yang jelas, pengguna non-root, dan tanpa rahasia.

Sebelum mulai

±3,5 jam (termasuk lab di komputermu).

Modul ini memakai materi di bawah. Belum yakin? Ulas dulu bagian yang disebut.

Hasil belajar: setelah modul ini kamu bisa membedakan image, container, dan volume; menulis Dockerfile untuk proyek Python; menjelaskan lapisan dan cache build lalu menyusun instruksi agar build ulang cepat; membuka port, memberi variabel lingkungan, dan menyimpan data di volume; membuat image multi-stage yang berjalan sebagai pengguna non-root; serta memeriksa Dockerfile yang diberikan sebagai teks dengan Python.

Proyek: Dockerfile multi-stage untuk paket warung; docker run mencetak laporan 15 September (kontrak proyek).

Istilah di modul ini (27)

Ketuk istilah untuk melihat penjelasannya. Di materi, istilah bergaris titik membuka kartu yang sama. Semua istilah course

Bahan modul

Semua kode, latihan, dan data modul ini dalam satu zip, untuk dijalankan di laptop atau Google Colab.

  • 6 contoh kode
  • 6 berkas latihan + tes
Lihat isi zip
  • BACA-DULU.txt
  • contoh_f5_02_100.py
  • contoh_f5_02_261.py
  • contoh_f5_02_542.py
  • contoh_f5_02_559.py
  • contoh_f5_02_693.py
  • contoh_f5_02_859.py
  • test_f5_02_1.py
  • test_f5_02_6.py
  • test_f5_02_2.py
  • test_f5_02_3.py
  • test_f5_02_4.py
  • test_f5_02_5.py