EN: Read in English
Dunia D1: Container Pertama · Cabaran bos
Syif malam
Anda akan belajar: cari dan baiki tiga container yang rosak dengan sendiri.
Teks BM belum disemak oleh penutur asli.
Disemak dengan Docker Engine 29 pada 31 Okt 2026
Masalahnya
Laptop anda~
- Port laptop 8080 → web port 8080
Bekas (container)
- webberjalan
- timergagal (keluar 127)
- dbgagal (keluar 1)
Pek beku (image)
- alpine:3.221 layer · 12.9MB · sedang diguna
- nginx:1.30-alpine8 layer · 93.5MB · sedang diguna
- postgres:18-alpine9 layer · 433MB · sedang diguna
Loker (volume)
- 1067bd10d611… (tanpa nama)0 fail · diguna oleh db
3 container (1 berjalan), 3 image, 1 loker.
Boss: syif malam! Tukang masak siang tinggalkan tiga bekas rosak. Kedai buka pukul 7. Baiki web, timer dan db.
Cuba
Bekas 1: web Up, tapi curl localhost:8080 gagal. Semak tingkapnya, kemudian baiki.
Laptop anda~
- Port laptop 8080 → web port 8080
Bekas (container)
- webberjalan
- timergagal (keluar 127)
- dbgagal (keluar 1)
Pek beku (image)
- alpine:3.221 layer · 12.9MB · sedang diguna
- nginx:1.30-alpine8 layer · 93.5MB · sedang diguna
- postgres:18-alpine9 layer · 433MB · sedang diguna
Loker (volume)
- 1067bd10d611… (tanpa nama)0 fail · diguna oleh db
3 container (1 berjalan), 3 image, 1 loker.
Petunjuk
docker port web tunjuk ke mana tingkap itu menuju.Semak
curl kata Connection reset by peer. Kenapa -p 8080:8080 gagal?
Pilih satu jawapan.
Cuba
Bekas 2: timer terus berhenti dengan Exited (127). Cari sebabnya, kemudian buat ia berdetik selama sejam.
Laptop anda~
- Port laptop 8080 → web port 80
Bekas (container)
- webberjalan
- timergagal (keluar 127)
- dbgagal (keluar 1)
Pek beku (image)
- alpine:3.221 layer · 12.9MB · sedang diguna
- nginx:1.30-alpine8 layer · 93.5MB · sedang diguna
- postgres:18-alpine9 layer · 433MB · sedang diguna
Loker (volume)
- 596e2561bb82… (tanpa nama)0 fail · diguna oleh db
3 container (1 berjalan), 3 image, 1 loker.
Petunjuk
Baca lognya dulu.Semak
Nota untuk syif malam seterusnya. Di mana anda tengok dulu?
Seret kad ke dalam kotak. Atau ketik kad, kemudian ketik kotak.
Cuba
Bekas 3: db berhenti dengan Exited (1). Baca apa yang ia minta. Kemudian berikan.
Laptop anda~
- Port laptop 8080 → web port 80
Bekas (container)
- webberjalan
- timerberjalan
- dbgagal (keluar 1)
Pek beku (image)
- alpine:3.221 layer · 12.9MB · sedang diguna
- nginx:1.30-alpine8 layer · 93.5MB · sedang diguna
- postgres:18-alpine9 layer · 433MB · sedang diguna
Loker (volume)
- 24cd65684366… (tanpa nama)0 fail · diguna oleh db
3 container (2 berjalan), 3 image, 1 loker.
Petunjuk
Log db sebut tetapan yang ia perlukan.Semak
Laptop anda~
- Port laptop 8080 → web port 80
Bekas (container)
- webberjalan
- timerberjalan
- dbberjalan
Pek beku (image)
- alpine:3.221 layer · 12.9MB · sedang diguna
- nginx:1.30-alpine8 layer · 93.5MB · sedang diguna
- postgres:18-alpine9 layer · 433MB · sedang diguna
Loker (volume)
- 5308b82d4150… (tanpa nama)24 fail · diguna oleh db
3 container (3 berjalan), 3 image, 1 loker.
Semakan pukul 7 pagi: tiga bekas Up. Tingkap jawab 200 OK. Kedai boleh dibuka. Syif malam selesai!
Anda berjaya!
Kini anda boleh cari dan baiki container yang rosak dengan sendiri.
Nak tahu lebih (pilihan)
Senarai semak syif malam anda. 1: docker ps -a tunjuk keadaannya. 2: docker logs beritahu kenapa ia berhenti. 3: docker port atau docker inspect semak tetapannya. 4: buang bekas itu, kemudian jalankan semula dengan betul.
Latihan sebenar (pilihan): rosakkan satu bekas dengan sengaja, kemudian baiki.
Misi sebenar
docker run -d --name db postgres:18-alpinedocker ps -adocker logs dbdocker rm dbdocker run -d --name db -e POSTGRES_PASSWORD=secret postgres:18-alpinedocker rm -f db
0 daripada 6 langkah siap · Tanda anda disimpan.
English
Boss: night shift! The day cook left three broken lunchboxes. The shop opens at 7. Fix web, timer and db.
Box 1: web is Up, but curl localhost:8080 fails. Check its hatch, then fix it.
docker port web shows where the hatch leads.curl said Connection reset by peer. Why did -p 8080:8080 fail?
Box 2: timer stops at once with Exited (127). Find out why, then make it tick for an hour.
Notes for the next night shift. Where do you look first?
Box 3: db stops with Exited (1). Read what it asks for. Then give it that.
7 a.m. check: three boxes Up. The hatch answers 200 OK. The shop can open. Night shift done!
You can now find and fix broken containers on your own.
Anda dah siapkan ini. Latihan lagi pun bagus!
Dokumentasi rasmi: docker ps · docker logs · Port publishing and mapping · docker run
Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?