B. Blue Green tutorial pengiriman perangkat lunak
Vol. I § Seri nol-downtime § Seri untuk pengembang junior
Release Tanpa Downtime · 2 / 10 ·

Dua slot, satu yang hidup

Laboratorium Titik Terang memakai dua nama: blue dan green. Keduanya adalah kontainer dari citra yang sama, dengan port tuan rumah yang berbeda.

Port yang diam di loopback

  • Aplikasi di dalam kontainer mendengar :3000.
  • Slot biru dipetakan ke 127.0.0.1:18080.
  • Slot hijau dipetakan ke 127.0.0.1:18081.
  • Caddy mendengar :8080 dan memilih satu dari dua port itu.

Pemetaan ke 127.0.0.1 menjaga slot tetap lokal. Pembaca publik hanya melihat Caddy.

Slot playground · two-slots
readerCaddy :8080blue :18080 · upgreen :18081 · down
Biru hidup di :18080. Hijau diam di :18081.
  1. Biru hidup di :18080. Hijau diam di :18081.
  2. Hijau bisa menjadi yang hidup. Hanya satu yang menerima lalu lintas.
state.jsonlive · last_deployed · rollback_versionstate.json mengingat slot hidup dan versi rollback.

state.json

Berkas kecil ini mengingat slot mana yang hidup dan versi mana yang bisa dikembalikan. Playbook membacanya sebelum bekerja. Ubah kunci live di explainer berikut untuk melihat slot sepi mana yang akan dipilih.

explainer · state
Penjelasan

Slot hidup adalah blue. Playbook akan men-deploy ke green di port 18081.

Catatan pembaca

Diskusi bab akan muncul setelah Giscus dihubungkan ke repositori situs.