EN: Read in English
Dunia D6: Di Sebalik Tabir
Sistem fail overlay
Anda akan belajar: cara banyak container kongsi satu image, dan setiap satu tulis pada lapisan atas sendiri yang nipis.
Teks BM belum disemak oleh penutur asli.
Disemak dengan Docker Engine 29 pada 31 Okt 2026
Masalahnya
Sepuluh bekas bermula dari satu pek makanan alpine. Berapa banyak ruang cakera yang diperlukan?
Pilih satu jawapan.
Tengok
Laptop anda~
- Tiada tingkap terbuka
Bekas (container)
- box1berjalan
- box2berjalan
Pek beku (image)
- alpine:3.221 layer · 12.9MB · sedang diguna
2 container (2 berjalan), 1 image, 0 loker.
Satu image, dua bekas, ruang tambahan yang kecil. Lapisan image ialah kek lapis baca sahaja. Setiap bekas dapat plastik lutsinar di atas. Susunan itu ialah overlay filesystem: Lapisan image baca sahaja, dengan satu plastik nipis boleh tulis di atas untuk setiap container. (sistem fail overlay).
Cuba
box1 tulis nota pada plastiknya. Boleh box2 baca? Taip docker exec box2 cat /root/note.txt.
Laptop anda~
- Tiada tingkap terbuka
Bekas (container)
- box1berjalan
- box2berjalan
Pek beku (image)
- alpine:3.221 layer · 12.9MB · sedang diguna
2 container (2 berjalan), 1 image, 0 loker.
Petunjuk
docker exec box2 cat /root/note.txt baca fail itu di dalam box2.Teka
box1 ubah /etc/profile, satu fail dari image. Ke mana perubahan itu pergi?
Pilih satu jawapan.
Semak
docker diff baca plastik atas. A = ditambah, C = diubah, D = dipadam. Padam tinggalkan pelekat penyorok, dipanggil whiteout. Image masih ada fail itu.
Semak
Tabiat baik, atau perlu diperbaiki?
Leret ke kanan untuk bagus, ke kiri untuk perlu baiki. Atau guna butang.
Simpan fail pangkalan data dalam volume, bukan pada plastik atas.
Anda berjaya!
Kini anda boleh terangkan cara container kongsi satu image.
Nak tahu lebih (pilihan)
Dalam istilah OverlayFS: lapisan image ialah lowerdir, plastik ialah upperdir, dan bekas nampak merged. Pemasangan baharu Docker Engine 29 guna stor image containerd dengan snapshotter overlayfs. Pemasangan lama yang dinaik taraf mungkin tunjuk overlay2. Semak dengan docker info.
Misi sebenar
docker run -d --name box alpine:3.22 sleep 300docker exec box sh -c "echo hi > /root/note.txt"docker diff boxdocker rm -f box
0 daripada 4 langkah siap · Tanda anda disimpan.
English
Ten lunchboxes start from one alpine meal pack. How much disk do they need?
One image, two boxes, tiny extra disk. The image layers are read-only kek lapis. Each box gets a clear sheet on top. That stack is the overlay filesystem.
box1 wrote a note on its sheet. Can box2 read it? Type docker exec box2 cat /root/note.txt.
docker exec box2 cat /root/note.txt reads the file inside box2.box1 edits /etc/profile, a file from the image. Where does the change go?
docker diff reads the top sheet. A = added, C = changed, D = deleted. A delete leaves a hiding sticker, called a whiteout. The image still has the file.
Good habit, or needs work?
You can now explain how containers share one image.
Anda dah siapkan ini. Latihan lagi pun bagus!
Dokumentasi rasmi: OverlayFS storage driver · containerd image store · docker container diff
Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?