EN: Read in English
Dunia D3: Loker & Talian Telefon
Panggil container ikut nama
Anda akan belajar: capai container lain ikut namanya, bukan localhost.
Teks BM belum disemak oleh penutur asli.
Disemak dengan Docker Engine 29 pada 31 Okt 2026
Masalahnya
Laptop anda~
- Tiada tingkap terbuka
Bekas (container)
- menuberjalan
- cacheberjalan
Pek beku (image)
- alpine:3.221 layer · 12.9MB · sedang diguna
- nginx:1.30-alpine8 layer · 93.5MB · sedang diguna
Talian telefon (rangkaian)
- shopnetmenu
2 container (2 berjalan), 2 image, 0 loker.
Satu bekas baru mahukan menu, jadi ia tanya localhost. Connection refused. Maksudnya: tiada siapa hidangkan halaman dalam bekas ini sendiri.
Tengok
Ketik setiap titik pada garis masa.
Dalam talian sendiri, Docker simpan buku telefon. Sebut nama bekas, dapat alamatnya. Inilah container DNS: Buku telefon Docker dalam rangkaian sendiri. Sebut nama container, dapat alamatnya..
Cuba
Dari bekas baru di shopnet, ambil halaman di http://menu.
Laptop anda~
- Tiada tingkap terbuka
Bekas (container)
- menuberjalan
- cacheberjalan
Pek beku (image)
- alpine:3.221 layer · 12.9MB · sedang diguna
- nginx:1.30-alpine8 layer · 93.5MB · sedang diguna
Talian telefon (rangkaian)
- shopnetmenu
2 container (2 berjalan), 2 image, 0 loker.
Petunjuk
Bekas baru itu mesti di shopnet:--network shopnet.Teka
Dalam satu container, siapa localhost?
Pilih satu jawapan.
Semak
Laptop anda~
- Tiada tingkap terbuka
Bekas (container)
- menuberjalan
- cacheberjalan
Pek beku (image)
- alpine:3.221 layer · 12.9MB · sedang diguna
- nginx:1.30-alpine8 layer · 93.5MB · sedang diguna
Talian telefon (rangkaian)
- shopnetmenu
2 container (2 berjalan), 2 image, 0 loker.
menu:8080 pun ditolak. nginx dengar di port 80 dalam bekas. 8080 cuma tingkap di laptop anda.
Semak
Satu bekas aplikasi berhubung dengan db dan menu. Tetapan yang baik, atau tidak?
Leret ke kanan untuk bagus, ke kiri untuk perlu baiki. Atau guna butang.
DB_HOST=dbAnda berjaya!
Kini anda boleh sambungkan container ikut nama.
Nak tahu lebih (pilihan)
Buku telefon Docker ada di 127.0.0.11 dalam setiap bekas di rangkaian sendiri. --network-alias tambah nama kedua. Compose letak semua servis dalam satu rangkaian dan namakan untuk anda (Dunia D4).
Latihan sebenar (pilihan):
Misi sebenar
docker network create practice-net && docker run -d --name menu --network practice-net nginx:1.30-alpinedocker run --rm --network practice-net alpine:3.22 wget -qO- http://menudocker run --rm --network practice-net alpine:3.22 wget -qO- http://localhostdocker rm -f menu && docker network rm practice-net
0 daripada 4 langkah siap · Tanda anda disimpan.
English
A new box wants the menu, so it asks localhost. Connection refused. Plain words: nobody serves pages inside this box itself.
On your own line, Docker keeps a phone book. Say a box’s name, get its address. This is container DNS.
From a new box on shopnet, fetch the page at http://menu.
--network shopnet.Inside a container, who is localhost?
menu:8080 is refused too. nginx listens on port 80 inside the box. 8080 is only a hatch on your laptop.
An app box talks to db and menu. Good setting, or not?
You can now connect containers by name.
Anda dah siapkan ini. Latihan lagi pun bagus!
Dokumentasi rasmi: Docker docs: Networking overview (DNS) · Docker docs: Bridge network driver
Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?