Π‘ΡΠ°ΡΠΈΡΡΠ° ΠΎΠ±ΡΡΠΆΠ΄Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π½Π°ΡΡΡΠΏΠ²Π°Ρ Π² ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ (Docker Registry ΠΈ Π½Π΅Π³ΠΎΠ²ΠΈΡΠ΅ Π°Π½Π°Π»ΠΎΠ·ΠΈ) Π² ΡΠ΅Π°Π»Π½ΠΎΡΡΠΈΡΠ΅ Π½Π° ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈΡΠ΅ CI/CD ΡΡΡΠ±ΠΎΠΏΡΠΎΠ²ΠΎΠ΄ΠΈ Π·Π° ΠΎΠ±Π»Π°ΡΠ½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π΄ΠΎΡΡΠ°Π²Π΅Π½ΠΈ Π½Π° Kubernetes. ΠΠ°Π΄Π΅Π½ΠΈ ΡΠ° ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΠΊΡΠΈΡΠ΅ΡΠΈΠΈ Π·Π° ΡΠΌΠ΅ΡΡΠ½ΠΎΡΡ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡΠ° ΠΈ ΠΏΡΠΎΠΈΠ·ΡΠΈΡΠ°ΡΠΈΡΠ΅ ΠΎΡ ΡΠΎΠ²Π° ΡΡΡΠ΄Π½ΠΎΡΡΠΈ ΠΏΡΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ΡΠΎ, ΡΠΏΠ΅ΡΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΡΡΡΠΎ ΠΈ Π·Π°Π΄ΠΎΠ²ΠΎΠ»ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π½ΡΠΆΠ΄ΠΈΡΠ΅ Π½Π° Π΅ΠΊΠΈΠΏΠΈΡΠ΅. ΠΠ°ΠΊΡΠ°Ρ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π½Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ΅Π½ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄, ΡΠ΅ Π²ΠΈ ΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ ΡΠ΅Π·ΠΈ ΡΡΡΠ΄Π½ΠΎΡΡΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΏΡΠ΅ΠΎΠ΄ΠΎΠ»Π΅Π½ΠΈ.
Π²ΡΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΡΠΎΡΡ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡΠ° Π² ΡΠ΅Π³ΠΈΡΡΡΡΠ° Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈΡΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π°ΡΠ°ΡΡΠ²Π° Π±ΡΡΠ·ΠΎ, Π·Π°Π΅ΠΌΠ°ΠΉΠΊΠΈ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΌΡΡΡΠΎ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π°ΠΉΠΊΠΈ ΡΠ΅Π½Π°ΡΠ° ΠΌΡ. ΠΠ° Π΄Π° ΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ°, ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΏΡΠΈΠ΅ΠΌΠ»ΠΈΠ²ΠΎ Π½Π°ΡΠ°ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎΡΠΎ, Π·Π°Π΅ΡΠΎ Π² ΡΠ΅Π³ΠΈΡΡΡΡΠ°, ΡΠ΅ ΠΏΡΠΈΠ΅ΠΌΠ°:
- ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΡΠΈΠΊΡΠΈΡΠ°Π½ Π±ΡΠΎΠΉ ΡΠ°Π³ΠΎΠ²Π΅ Π·Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ;
- ΠΏΠΎΡΠΈΡΡΠ΅ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡΠ° ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½.
ΠΡΡΠ²ΠΎΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° Π΅ ΠΏΡΠΈΠ΅ΠΌΠ»ΠΈΠ²ΠΎ Π·Π° ΠΌΠ°Π»ΠΊΠΈ Π΅ΠΊΠΈΠΏΠΈ. ΠΠΊΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΠΈΠΌΠ°Ρ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΈ ΡΠ°Π³ΠΎΠ²Π΅ (latest
, main
, test
, boris
ΠΈ Ρ.Π½.), ΡΠ΅Π³ΠΈΡΡΡΡΡΡ Π½ΡΠΌΠ° Π΄Π° Π½Π°Π±ΡΠ±Π½Π΅ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅Ρ ΠΈ Π·Π° Π΄ΡΠ»Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΈΠ·ΠΎΠ±ΡΠΎ Π½ΡΠΌΠ° Π΄Π° ΡΠ΅ Π½Π°Π»Π°Π³Π° Π΄Π° ΠΌΠΈΡΠ»ΠΈΡΠ΅ Π·Π° ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ΡΠΎ ΠΌΡ. Π ΠΊΡΠ°Ρ Π½Π° ΠΊΡΠ°ΠΈΡΠ°ΡΠ° Π²ΡΠΈΡΠΊΠΈ Π½Π΅ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ΅ ΠΈΠ·ΡΡΠΈΠ²Π°Ρ ΠΈ ΠΏΡΠΎΡΡΠΎ Π½ΡΠΌΠ° ΡΠ°Π±ΠΎΡΠ° Π·Π° ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ (Π²ΡΠΈΡΠΊΠΎ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π° ΠΎΡ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ ΡΡΠ±ΠΈΡΠ°Ρ Π½Π° Π±ΠΎΠΊΠ»ΡΠΊ).
ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π°, ΡΠΎΠ·ΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π° ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ΡΠΎ ΠΈ ΡΡΠ΄ΠΊΠΎ Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠΈΠΌ Π·Π° ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈ CI/CD ΠΏΡΠΎΠ΅ΠΊΡΠΈ. ΠΠ΅ΡΠ°Π·Π΄Π΅Π»Π½Π° ΡΠ°ΡΡ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π±Π΅ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ, ΠΊΠΎΠ΅ΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ΅ΡΡΠ²Π°ΡΠ΅, Π²Π½Π΅Π΄ΡΡΠ²Π°ΡΠ΅ ΠΈ Π΄ΠΎΡΡΠ°Π²ΡΡΠ΅ Π½ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π±ΡΡΠ·ΠΎ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΠ² Π²ΡΠΈΡΠΊΠΈ Π½Π°ΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ, CI ΡΡΡΠ±ΠΎΠΏΡΠΎΠ²ΠΎΠ΄ ΡΠ΅ ΡΡΠ·Π΄Π°Π²Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ Ρ Π²ΡΠ΅ΠΊΠΈ Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½Ρ. Π Π½Π΅Π³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ ΡΠ΅ ΡΠ³Π»ΠΎΠ±ΡΠ²Π°, ΡΠ΅ΡΡΠ²Π°, ΡΠ°Π·Π³ΡΡΡΠ° ΠΊΡΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π²Π΅ΡΠΈΠ³ΠΈ Π½Π° Kubernetes Π·Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΈ ΠΎΡΡΠ°Π²Π°ΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΈ Π°ΠΊΠΎ Π²ΡΠΈΡΠΊΠΎ Π΅ Π½Π°ΡΠ΅Π΄, ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π΄ΠΎΡΡΠΈΠ³Π°Ρ Π΄ΠΎ ΠΊΡΠ°ΠΉΠ½ΠΈΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π». Π ΡΠΎΠ²Π° Π²Π΅ΡΠ΅ Π½Π΅ Π΅ ΡΠ°ΠΊΠ΅ΡΠ½Π° Π½Π°ΡΠΊΠ°, Π° Π΅ΠΆΠ΅Π΄Π½Π΅Π²ΠΈΠ΅ Π·Π° ΠΌΠ½ΠΎΠ·ΠΈΠ½Π° - Π½Π°ΠΉ-Π²Π΅ΡΠΎΡΡΠ½ΠΎ Π·Π° Π²Π°Ρ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠ΅ΡΠ΅ΡΠ΅ ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ.
Π’ΡΠΉ ΠΊΠ°ΡΠΎ ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π½ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Ρ ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ ΠΈ ΠΈΠ·Π΄Π°Π½ΠΈΡΡΠ° ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Ρ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΡΡΠΈ Π½Π° Π΄Π΅Π½, ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ Π΅, ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π΅ ΠΏΡΠΈΠ΄ΡΡΠΆΠ΅Π½ ΠΎΡ Π·Π½Π°ΡΠΈΡΠ΅Π»Π΅Π½ Π±ΡΠΎΠΉ Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½ΡΠΈ, ΠΊΠΎΠ΅ΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π²Π° Π³ΠΎΠ»ΡΠΌ Π±ΡΠΎΠΉ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² ΡΠ΅Π³ΠΈΡΡΡΡΠ°. Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ²Π° Π²ΡΠ·Π½ΠΈΠΊΠ²Π° Π²ΡΠΏΡΠΎΡΡΡ Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ΅Π³ΠΈΡΡΡΡΠ°, Ρ.Π΅. ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π°Π½Π΅ Π½Π° Π½Π΅ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.
ΠΠΎ ΠΊΠ°ΠΊ ΠΈΠ·ΠΎΠ±ΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΠ΅ Π΄Π°Π»ΠΈ Π΅Π΄Π½ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΎ?
ΠΡΠΈΡΠ΅ΡΠΈΠΈ Π·Π° ΡΠ΅Π»Π΅Π²Π°Π½ΡΠ½ΠΎΡΡ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ
Π ΠΏΠΎ-Π³ΠΎΠ»ΡΠΌΠ°ΡΠ° ΡΠ°ΡΡ ΠΎΡ ΡΠ»ΡΡΠ°ΠΈΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΠΊΡΠΈΡΠ΅ΡΠΈΠΈ ΡΠ΅ Π±ΡΠ΄Π°Ρ:
1. ΠΡΡΠ²ΠΈΡΡ (Π½Π°ΠΉ-ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΈΡΡ ΠΈ Π½Π°ΠΉ-ΠΊΡΠΈΡΠΈΡΠ΅Π½ ΠΎΡ Π²ΡΠΈΡΠΊΠΈ) ΡΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡΠ°, ΠΊΠΎΠΈΡΠΎ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² Kubernetes. ΠΡΠ΅ΠΌΠ°Ρ
Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅Π·ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½ΠΈ ΡΠ°Π·Ρ
ΠΎΠ΄ΠΈ Π·Π° ΠΏΡΠ΅ΡΡΠΎΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΈ Π·Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ) ΠΈΠ»ΠΈ Π΄Π° ΠΎΡΡ
Π²ΡΡΠ»ΠΈ ΡΡΠΈΠ»ΠΈΡΡΠ° Π½Π° Π΅ΠΊΠΈΠΏΠ° Π·Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ Π½Π° ΠΊΠΎΠΉΡΠΎ ΠΈ Π΄Π° Π΅ ΠΎΡ ΡΠΈΠΊΠ»ΠΈΡΠ΅. (ΠΠΎ ΡΠ°Π·ΠΈ ΠΏΡΠΈΡΠΈΠ½Π° Π΄ΠΎΡΠΈ Π½Π°ΠΏΡΠ°Π²ΠΈΡ
ΠΌΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»Π΅Π½
2. ΠΡΠΎΡΠΎ (ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, Π½ΠΎ ΡΡΡΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΠΆΠ½ΠΎ ΠΈ ΠΎΡΠ½ΠΎΠ²ΠΎ ΡΠ΅ ΠΎΡΠ½Π°ΡΡ Π΄ΠΎ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡΡΠ°) - ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π° Π²ΡΡΡΠ°Π½Π΅ Π½Π°Π·Π°Π΄ Π² ΡΠ»ΡΡΠ°ΠΉ Π½Π° ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΠΈΠΎΠ·Π½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π² ΡΠ΅ΠΊΡΡΠ°ΡΠ° Π²Π΅ΡΡΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠ»ΡΡΠ°Ρ Π½Π° Helm, ΡΠΎΠ²Π° ΡΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π² Π·Π°ΠΏΠ°Π·Π΅Π½ΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π° ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ΡΠΎ. (ΠΠ΅ΠΆΠ΄Ρ Π΄ΡΡΠ³ΠΎΡΠΎ, ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π² Helm ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ΡΠΎ Π΅ 256 ΡΠ΅Π²ΠΈΠ·ΠΈΠΈ, Π½ΠΎ Π΅ ΠΌΠ°Π»ΠΊΠΎ Π²Π΅ΡΠΎΡΡΠ½ΠΎ Π½ΡΠΊΠΎΠΉ Π½Π°ΠΈΡΡΠΈΠ½Π° Π΄Π° ΠΈΠΌΠ° Π½ΡΠΆΠ΄Π° Π΄Π° Π·Π°ΠΏΠ°Π·Π²Π° ΡΠΎΠ²Π° Π³ΠΎΠ»ΡΠΌ Π±ΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ?..) Π ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° Π½ΠΈΠ΅, ΠΏΠΎ-ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΎ, ΡΡΡ ΡΠ°Π½ΡΠ²Π°ΠΌΠ΅ Π²Π΅ΡΡΠΈΠΈ, Π·Π° Π΄Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π³ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ, Ρ.Π΅. βΠ²ΡΡΡΠ°Π½Π΅β ΠΊΡΠΌ ΡΡΡ , Π°ΠΊΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ.
3. Π’ΡΠ΅ΡΠΎ - Π½ΡΠΆΠ΄ΠΈΡΠ΅ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅: ΠΡΠΈΡΠΊΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΡΠ° ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΡΠ΅ΠΊΡΡΠ°ΡΠ° ΠΈΠΌ ΡΠ°Π±ΠΎΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π°ΠΊΠΎ ΠΎΠ±ΠΌΠΈΡΠ»ΡΠΌΠ΅ PR, ΡΠΎΠ³Π°Π²Π° ΠΈΠΌΠ° ΡΠΌΠΈΡΡΠ» Π΄Π° ΠΎΡΡΠ°Π²ΠΈΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²Π°ΡΠΎ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΠΊΠΎΠΌΠΈΡ ΠΈ, Π΄Π° ΡΠ΅ΡΠ΅ΠΌ, Π½Π° ΠΏΡΠ΅Π΄ΠΈΡΠ½ΠΈΡ ΠΊΠΎΠΌΠΈΡ: ΠΏΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡΡ ΠΌΠΎΠΆΠ΅ Π±ΡΡΠ·ΠΎ Π΄Π° ΡΠ΅ Π²ΡΡΠ½Π΅ ΠΊΡΠΌ Π²ΡΡΠΊΠ° Π·Π°Π΄Π°ΡΠ° ΠΈ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Ρ Π½Π°ΠΉ-Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ.
4. Π§Π΅ΡΠ²ΡΡΡΠΎ - ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΠΎΡΠ³ΠΎΠ²Π°ΡΡΡ Π½Π° Π²Π΅ΡΡΠΈΠΈΡΠ΅ Π½Π° Π½Π°ΡΠ΅ΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Ρ.Π΅. ΡΠ° ΠΊΡΠ°ΠΉΠ½ΠΈΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡ: v1.0.0, 20.04.01/XNUMX/XNUMX, sierra ΠΈ Π΄Ρ.
NB: ΠΠ΅ΡΠΈΠ½ΠΈΡΠ°Π½ΠΈΡΠ΅ ΡΡΠΊ ΠΊΡΠΈΡΠ΅ΡΠΈΠΈ ΡΠ° ΡΠΎΡΠΌΡΠ»ΠΈΡΠ°Π½ΠΈ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΠΎΠΏΠΈΡ Π²ΡΠ² Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ Π΄Π΅ΡΠ΅ΡΠΊΠΈ Π΅ΠΊΠΈΠΏΠΈ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΎΡ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅ ΠΎΠ±Π°ΡΠ΅, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ ΠΎΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠ° Π² ΠΏΡΠΎΡΠ΅ΡΠΈΡΠ΅ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π°ΡΠ° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Kubernetes), ΡΠ΅Π·ΠΈ ΠΊΡΠΈΡΠ΅ΡΠΈΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ°Π²Π°Ρ.
ΠΠΎΠΏΡΡΡΠΈΠΌΠΎΡΡ ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ
ΠΠΎΠΏΡΠ»ΡΡΠ½ΠΈΡΠ΅ ΡΡΠ»ΡΠ³ΠΈ Ρ ΡΠ΅Π³ΠΈΡΡΡΠΈ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ ΠΊΠ°ΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΡΠ²ΠΎΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° Π·Π° ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ: Π² ΡΡΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡΡΠ°, ΠΏΡΠΈ ΠΊΠΎΠΈΡΠΎ Π΅ΡΠΈΠΊΠ΅ΡΡΡ ΡΠ΅ ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π° ΠΎΡ ΡΠ΅Π³ΠΈΡΡΡΡΠ°. Π’Π΅Π·ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΎΠ±Π°ΡΠ΅ ΡΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈ ΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ ΠΊΠ°ΡΠΎ ΠΈΠΌΠ΅Π½Π°, Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ ΠΈ Π±ΡΠΎΠΉ ΡΠ°Π³ΠΎΠ²Π΅*.
* ΠΠ°Π²ΠΈΡΠΈ ΠΎΡ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½ΠΈΡ Π½Π° ΡΠ΅Π³ΠΈΡΡΡΡ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ. Π Π°Π·Π³Π»Π΅Π΄Π°Ρ ΠΌΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ Π½Π° ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ: Azure CR, Docker Hub, ECR, GCR, GitHub Packages, GitLab Container Registry, Harbour Registry, JFrog Artifactory, Quay.io - ΠΊΡΠΌ ΡΠ΅ΠΏΡΠ΅ΠΌΠ²ΡΠΈ'2020.
Π’ΠΎΠ·ΠΈ Π½Π°Π±ΠΎΡ ΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π΅ Π½Π°ΠΏΡΠ»Π½ΠΎ Π΄ΠΎΡΡΠ°ΡΡΡΠ΅Π½, Π·Π° Π΄Π° ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠΈ ΡΠ΅ΡΠ²ΡΡΡΠΈΡ ΠΊΡΠΈΡΠ΅ΡΠΈΠΉ - Π΄Π° ΠΈΠ·Π±Π΅ΡΠ΅ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΠΎΡΠ³ΠΎΠ²Π°ΡΡΡ Π½Π° Π²Π΅ΡΡΠΈΠΈΡΠ΅. ΠΠ° Π²ΡΠΈΡΠΊΠΈ ΠΎΡΡΠ°Π½Π°Π»ΠΈ ΠΊΡΠΈΡΠ΅ΡΠΈΠΈ ΠΎΠ±Π°ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΈΠ·Π±Π΅ΡΠ΅ Π½ΡΠΊΠ°ΠΊΠ²ΠΎ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠΈΡΠ½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ (ΠΏΠΎ-ΡΠ²ΡΡΠ΄Π° ΠΈΠ»ΠΈ, ΠΎΠ±ΡΠ°ΡΠ½ΠΎ, ΠΏΠΎ-ΠΌΠ΅ΠΊΠ° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°) - Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ ΠΎΡ ΠΎΡΠ°ΠΊΠ²Π°Π½ΠΈΡΡΠ° ΠΈ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΠΈΡΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ΅ΡΠΈΡΡ ΠΊΡΠΈΡΠ΅ΡΠΈΠΉ - ΡΠ²ΡΡΠ·Π°Π½ Ρ Π½ΡΠΆΠ΄ΠΈΡΠ΅ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ - ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΡΠ΅ΡΠ΅Π½ ΡΡΠ΅Π· ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΈ Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° Π΅ΠΊΠΈΠΏΠΈ: ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΎ ΠΈΠΌΠ΅Π½ΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½Π΅ Π½Π° ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΈ ΡΠΏΠΈΡΡΡΠΈ Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈ ΠΈ Π²ΡΡΡΠ΅ΡΠ½ΠΈ ΡΠΏΠΎΡΠ°Π·ΡΠΌΠ΅Π½ΠΈΡ. ΠΠΎ Π² ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° Π²ΡΠ΅ ΠΎΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°. Π Π°ΠΊΠΎ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ Π½Π° Π³ΠΎΡΠΎΠ²ΠΈΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π½Π΅ ΡΠ° Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΈ, ΡΡΡΠ±Π²Π° Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ Π½Π΅ΡΠΎ ΡΠ²ΠΎΠ΅.
Π‘ΠΈΡΡΠ°ΡΠΈΡΡΠ° Ρ ΠΏΡΡΠ²ΠΈΡΠ΅ Π΄Π²Π° ΠΊΡΠΈΡΠ΅ΡΠΈΡ Π΅ ΠΏΠΎΠ΄ΠΎΠ±Π½Π°: ΡΠ΅ Π½Π΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠ΅Π½ΠΈ Π±Π΅Π· ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ Π²ΡΠ½ΡΠ½Π° ΡΠΈΡΡΠ΅ΠΌΠ° - ΡΠ°Π·ΠΈ, Π² ΠΊΠΎΡΡΠΎ ΡΠ° ΡΠ°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° (Π² Π½Π°ΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉ Kubernetes).
ΠΠ»ΡΡΡΡΠ°ΡΠΈΡ Π½Π° ΡΠ°Π±ΠΎΡΠ΅Π½ ΠΏΡΠΎΡΠ΅Ρ Π² Git
ΠΠ° ΠΏΡΠΈΠ΅ΠΌΠ΅ΠΌ, ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈΡΠ΅ Π½Π΅ΡΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π² Git:
ΠΠΊΠΎΠ½Π°ΡΠ° Ρ Π³Π»Π°Π²Π° Π² Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠ°ΡΠ° ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΡΠ° Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈ Π² Kubernetes Π·Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ (ΠΊΡΠ°ΠΉΠ½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ, ΡΠ΅ΡΡΠ΅ΡΠΈ, ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡΠΈ ΠΈ Ρ.Π½.) ΠΈΠ»ΠΈ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ Π·Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΡΠ΅Π»ΠΈ.
ΠΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΠ»ΡΡΠ²Π°, Π°ΠΊΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° Π·Π° ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΡΠ°ΠΌΠΎ Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ (Π½Π΅ ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅) ΠΏΠΎ Π΄Π°Π΄Π΅Π½ΠΈ ΠΈΠΌΠ΅Π½Π° Π½Π° ΡΠ°Π³ΠΎΠ²Π΅?
ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π½ΡΠΌΠ° Π΄Π° Π·Π°ΡΠ°Π΄Π²Π° Π½ΠΈΠΊΠΎΠ³ΠΎ.
ΠΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ, Π°ΠΊΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡΠ° Π΄Π° Π½Π΅ ΡΠ΅ ΠΈΠ·ΡΡΠΈΠ²Π°Ρ? ΡΠΏΠΎΡΠ΅Π΄ Π΄Π°Π΄Π΅Π½ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» ΠΎΡ Π²ΡΠ΅ΠΌΠ΅ / Π±ΡΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈ Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½ΡΠΈ?
Π Π΅Π·ΡΠ»ΡΠ°ΡΡΡ ΡΡΠ°Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π΄ΠΎΠ±ΡΡ, Π½ΠΎ Π²ΡΠ΅ ΠΎΡΠ΅ Π΅ Π΄Π°Π»Π΅Ρ ΠΎΡ ΠΈΠ΄Π΅Π°Π»Π½ΠΈΡ. Π ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° Π²ΡΠ΅ ΠΎΡΠ΅ ΠΈΠΌΠ°ΠΌΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π½ΡΠΆΠ΄Π°ΡΡ ΠΎΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² ΡΠ΅Π³ΠΈΡΡΡΡΠ° (ΠΈΠ»ΠΈ Π΄ΠΎΡΠΈ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈ Π² K8s), Π·Π° Π΄Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Ρ Π³ΡΠ΅ΡΠΊΠΈ...
ΠΠ° Π΄Π° ΠΎΠ±ΠΎΠ±ΡΠΈΠΌ ΡΠ΅ΠΊΡΡΠ°ΡΠ° ΠΏΠ°Π·Π°ΡΠ½Π° ΡΠΈΡΡΠ°ΡΠΈΡ: Π½Π°Π»ΠΈΡΠ½ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈΡΠ΅ Π½Π΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ Π³ΡΠ²ΠΊΠ°Π²ΠΎΡΡ ΠΏΡΠΈ ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΠΏΡΠΈΡΠΈΠ½Π° Π·Π° ΡΠΎΠ²Π° Π΅ Π½ΡΠΌΠ° Π½Π°ΡΠΈΠ½ Π·Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ Π²ΡΠ½ΡΠ½ΠΈΡ ΡΠ²ΡΡ. ΠΠΊΠ°Π·Π²Π° ΡΠ΅, ΡΠ΅ Π΅ΠΊΠΈΠΏΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ ΡΠ°ΠΊΠ°Π²Π° Π³ΡΠ²ΠΊΠ°Π²ΠΎΡΡ, ΡΠ° ΠΏΡΠΈΠ½ΡΠ΄Π΅Π½ΠΈ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»Π½ΠΎ Π΄Π° ΠΏΡΠΈΠ»Π°Π³Π°Ρ ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ βΠΎΡΠ²ΡΠ½β, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ API Π½Π° Docker Registry (ΠΈΠ»ΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈΡ API Π½Π° ΡΡΠΎΡΠ²Π΅ΡΠ½Π°ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ).
ΠΠΈΠ΅ ΠΎΠ±Π°ΡΠ΅ ΡΡΡΡΠΈΡ ΠΌΠ΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»Π½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΠ΅ΡΠΎ Π΄Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ° ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π·Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΅ΠΊΠΈΠΏΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠ΅Π³ΠΈΡΡΡΠΈ...
ΠΠ°ΡΠΈΡΡ ΠΏΡΡ ΠΊΡΠΌ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»Π½ΠΎ ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ
ΠΡΠΊΡΠ΄Π΅ ΠΈΠ΄Π²Π° ΡΠ°Π·ΠΈ Π½ΡΠΆΠ΄Π°? Π€Π°ΠΊΡ Π΅, ΡΠ΅ Π½ΠΈΠ΅ Π½Π΅ ΡΠΌΠ΅ ΠΎΡΠ΄Π΅Π»Π½Π° Π³ΡΡΠΏΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ, Π° Π΅ΠΊΠΈΠΏ, ΠΊΠΎΠΉΡΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠ²Π° ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡ ΡΡΡ
Π΅Π΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, ΠΏΠΎΠΌΠ°Π³Π°ΠΉΠΊΠΈ Π·Π° ΡΡΠ»ΠΎΡΡΠ½ΠΎΡΠΎ ΡΠ΅ΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈΡΠ΅ Ρ CI/CD. Π ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΡ ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π·Π° ΡΠΎΠ²Π° Π΅ ΠΏΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° Open Source
ΠΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² ΡΠ΅Π³ΠΈΡΡΡΡΠ°* (Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½ΠΎ ΡΠ»Π΅Π΄ ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ΡΠΎ ΠΈΠΌ) Π΅ ΠΎΡΠ΅Π²ΠΈΠ΄Π½Π° ΡΡΠ½ΠΊΡΠΈΡ Π½Π° ΡΠ°ΠΊΠ°Π²Π° ΠΏΠΎΠΌΠΎΡΠ½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°. Π ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡΠ° ΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΡΡ ΡΠ°ΠΌ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅, ΡΠΎΠ³Π°Π²Π° - Π°ΠΊΠΎ Π²Π°ΡΠ΅ΡΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π½Π΅ Π΅ Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ - ΡΡΡΠ±Π²Π° Π΄Π° Π½ΠΎΡΠΈΡΠ΅ ΠΎΡΠ³ΠΎΠ²ΠΎΡΠ½ΠΎΡΡ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π²Π°ΡΠΎΡΠΎ ΠΈΠΌ ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅. ΠΠ°ΠΊ ΠΏΠΎΡΡΠΈΠ³Π½Π°Ρ ΠΌΠ΅ ΡΡΠΏΠ΅Ρ Π² ΡΠΎΠ²Π°, ΠΎΡΠ³ΠΎΠ²Π°ΡΡΠΉΠΊΠΈ Π½Π° Π²ΡΠΈΡΠΊΠΈ Π·Π°Π΄Π°Π΄Π΅Π½ΠΈ ΠΊΡΠΈΡΠ΅ΡΠΈΠΈ, ΡΠ΅ Π±ΡΠ΄Π΅ ΠΎΠ±ΡΡΠ΄Π΅Π½ΠΎ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ.
* ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅ ΡΠ°ΠΌΠΈΡΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ (Docker Registry, GitLab Container Registry, Harbor ΠΈ Ρ.Π½.), ΡΠ΅Ρ Π½ΠΈΡΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ ΡΠ΅ ΡΠ±Π»ΡΡΠΊΠ²Π°Ρ ΡΡΡ ΡΡΡΠΈΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ. Π£Π½ΠΈΠ²Π΅ΡΡΠ°Π»Π½ΠΎΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π² Π½Π°ΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉ Π½Π΅ Π·Π°Π²ΠΈΡΠΈ ΠΎΡ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅Π³ΠΈΡΡΡΡΠ°, Ρ.ΠΊ ΡΠ°Π±ΠΎΡΠΈ ΠΈΠ·Π²ΡΠ½ ΡΠ°ΠΌΠΈΡΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠΈ ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π΅Π΄Π½ΠΎ ΠΈ ΡΡΡΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π·Π° Π²ΡΠΈΡΠΊΠΈ.
ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ werf ΠΊΠ°ΡΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ, Π½Π°Π΄ΡΠ²Π°ΠΌΠ΅ ΡΠ΅, ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈΡΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΈ Π·Π° Π΄ΡΡΠ³ΠΈ Π΅ΠΊΠΈΠΏΠΈ, ΠΈΠ·ΠΏΡΠ°Π²Π΅Π½ΠΈ ΠΏΡΠ΅Π΄ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΡΡΡΠ΄Π½ΠΎΡΡΠΈ.
Π’Π°ΠΊΠ° ΡΠ΅ ΡΠ΅ Π·Π°Π΅Ρ
ΠΌΠ΅ Π²ΡΠ½ΡΠ΅Π½ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΡΠΌ Π·Π° ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ - Π²ΠΌΠ΅ΡΡΠΎ ΡΠ΅Π·ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π²Π΅ΡΠ΅ ΡΠ° Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ Π² ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠ΅ Π·Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ. ΠΡΡΠ²Π°ΡΠ° ΡΡΡΠΏΠΊΠ° Π±Π΅ΡΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° API Π½Π° Docker Registry, Π·Π° Π΄Π° ΡΠ΅ ΡΡΠ·Π΄Π°Π΄Π°Ρ ΡΡΡΠΈΡΠ΅ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΠΈ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈ Π·Π° Π±ΡΠΎΡ Π½Π° ΡΠ°Π³ΠΎΠ²Π΅ΡΠ΅ ΠΈ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π½Π° ΡΡΡ
Π½ΠΎΡΠΎ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ (ΡΠΏΠΎΠΌΠ΅Π½Π°ΡΠΈ ΠΏΠΎ-Π³ΠΎΡΠ΅). ΠΠΎΠ±Π°Π²Π΅Π½ ΠΊΡΠΌ ΡΡΡ
ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ ΡΠΏΠΈΡΡΠΊ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π² ΡΠ°Π·Π³ΡΡΠ½Π°ΡΠ° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°, Ρ.Π΅. Kubernetes. ΠΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΎΡΠΎ Π±Π΅ΡΠ΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ API Π½Π° Kubernetes, Π·Π° Π΄Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ΡΠ΅ ΠΏΡΠ΅Π· Π²ΡΠΈΡΠΊΠΈ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈ ΡΠ΅ΡΡΡΡΠΈ ΠΈ Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΠΏΠΈΡΡΠΊ ΡΡΡ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ image
.
Π’ΠΎΠ²Π° ΡΡΠΈΠ²ΠΈΠ°Π»Π½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ΅ΡΠΈ Π½Π°ΠΉ-ΠΊΡΠΈΡΠΈΡΠ½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ (ΠΊΡΠΈΡΠ΅ΡΠΈΠΉ β 1), Π½ΠΎ Π±Π΅ΡΠ΅ ΡΠ°ΠΌΠΎ Π½Π°ΡΠ°Π»ΠΎΡΠΎ Π½Π° Π½Π°ΡΠ΅ΡΠΎ ΠΏΡΡΡΠ²Π°Π½Π΅ Π·Π° ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅. Π‘Π»Π΅Π΄Π²Π°ΡΠ°ΡΠ° - ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π° - ΡΡΡΠΏΠΊΠ° Π±Π΅ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΡΠΎ Π°ΡΠΎΡΠΈΠΈΡΠ°ΠΉΡΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Ρ ΠΈΡΡΠΎΡΠΈΡΡΠ° Π½Π° Git.
Π‘Ρ Π΅ΠΌΠΈ Π·Π° Π΅ΡΠΈΠΊΠ΅ΡΠΈΡΠ°Π½Π΅
ΠΠ°ΡΠΎ Π½Π°ΡΠ°Π»ΠΎ ΠΈΠ·Π±ΡΠ°Ρ
ΠΌΠ΅ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄, ΠΏΡΠΈ ΠΊΠΎΠΉΡΠΎ ΠΊΡΠ°ΠΉΠ½ΠΎΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΡΡΡ
ΡΠ°Π½ΡΠ²Π° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠ°ΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅, ΠΈ ΠΈΠ·Π³ΡΠ°Π΄ΠΈΡ
ΠΌΠ΅ ΠΏΡΠΎΡΠ΅ΡΠ° Π²ΡΡΡ
Ρ ΡΡ
Π΅ΠΌΠΈ Π·Π° ΠΌΠ°ΡΠΊΠΈΡΠ°Π½Π΅. ΠΡΠΈ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ Π΅ ΠΈΠ·Π±ΡΠ°Π» ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½Π° ΠΎΠΏΡΠΈΡ Π·Π° ΠΌΠ°ΡΠΊΠΈΡΠ°Π½Π΅ (git-branch
, git-commit
ΠΈΠ»ΠΈ git-tag
) ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΡΠΎΡΠ²Π΅ΡΠ½Π°ΡΠ° ΡΡΠΎΠΉΠ½ΠΎΡΡ. Π CI ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ ΡΠ΅Π·ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π±ΡΡ
Π° Π·Π°Π΄Π°Π΄Π΅Π½ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈΡΠ΅ Π½Π° ΡΡΠ΅Π΄Π°ΡΠ°. ΠΡΡΡΠ½ΠΎΡΡ ΠΊΡΠ°ΠΉΠ½ΠΎΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π±Π΅ΡΠ΅ ΡΠ²ΡΡΠ·Π°Π½ΠΎ Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ΅Π½ Git ΠΏΡΠΈΠΌΠΈΡΠΈΠ², ΡΡΡ
ΡΠ°Π½ΡΠ²Π°ΠΉΠΊΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ Π·Π° ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ Π² Π΅ΡΠΈΠΊΠ΅ΡΠΈ.
Π’ΠΎΠ·ΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ Π½Π°Π±ΠΎΡ ΠΎΡ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π° Git Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°ΡΠΎ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½ ΠΈΠ·ΡΠΎΡΠ½ΠΈΠΊ Π½Π° ΠΈΡΡΠΈΠ½Π°:
- ΠΡΠΈ ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° ΠΊΠ»ΠΎΠ½/Π΅ΡΠΈΠΊΠ΅Ρ Π² Git, ΡΠ²ΡΡΠ·Π°Π½ΠΈΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² ΡΠ΅Π³ΠΈΡΡΡΡΠ° ΡΠ΅ ΠΈΠ·ΡΡΠΈΠ²Π°Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ.
- ΠΡΠΎΡΡ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡΠ°, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Git ΡΠ°Π³ΠΎΠ²Π΅ ΠΈ Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½ΡΠΈ, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ° ΠΎΡ Π±ΡΠΎΡ Π½Π° ΡΠ°Π³ΠΎΠ²Π΅ΡΠ΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π² ΠΈΠ·Π±ΡΠ°Π½Π°ΡΠ° ΡΡ Π΅ΠΌΠ°, ΠΈ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ, Π² ΠΊΠΎΠ΅ΡΠΎ Π΅ ΡΡΠ·Π΄Π°Π΄Π΅Π½ Π°ΡΠΎΡΠΈΠΈΡΠ°Π½ΠΈΡΡ ΠΊΠΎΠΌΠΈΡ.
ΠΠ°ΡΠΎ ΡΡΠ»ΠΎ, ΠΏΠΎΠ»ΡΡΠ΅Π½Π°ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π·Π°Π΄ΠΎΠ²ΠΎΠ»ΠΈ Π½ΡΠΆΠ΄ΠΈΡΠ΅ Π½ΠΈ, Π½ΠΎ ΡΠΊΠΎΡΠΎ Π½ΠΈ ΠΎΡΠ°ΠΊΠ²Π°ΡΠ΅ Π½ΠΎΠ²ΠΎ ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ°ΡΠ΅Π»ΡΡΠ²ΠΎ. Π€Π°ΠΊΡ Π΅, ΡΠ΅ Π΄ΠΎΠΊΠ°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ
ΠΌΠ΅ ΡΡ
Π΅ΠΌΠΈ Π·Π° ΠΌΠ°ΡΠΊΠΈΡΠ°Π½Π΅, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΠΏΡΠΈΠΌΠΈΡΠΈΠ²ΠΈ Π½Π° Git, ΡΠ΅ Π½Π°ΡΡΠΊΠ½Π°Ρ
ΠΌΠ΅ Π½Π° ΡΠ΅Π΄ΠΈΡΠ° Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΡΠΈ. (Π’ΡΠΉ ΠΊΠ°ΡΠΎ ΡΡΡ
Π½ΠΎΡΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π΅ ΠΈΠ·Π²ΡΠ½ ΠΎΠ±Ρ
Π²Π°ΡΠ° Π½Π° ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ, Π²ΡΠ΅ΠΊΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π·Π°ΠΏΠΎΠ·Π½Π°Π΅ Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈΡΠ΅
ΠΠΎΠ² Π°Π»Π³ΠΎΡΠΈΡΡΠΌ
ΠΠ°ΡΠΎ? Π‘ ΠΌΠ°ΡΠΊΠΈΡΠ°Π½Π΅, Π±Π°Π·ΠΈΡΠ°Π½ΠΎ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅, Π²ΡΠ΅ΠΊΠΈ Π΅ΡΠΈΠΊΠ΅Ρ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½ΡΠΈ Π² Git. ΠΠΎΠ³Π°ΡΠΎ ΠΏΠΎΡΠΈΡΡΠ²Π°ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, Π²Π΅ΡΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡΠ΅ ΡΠ°ΠΌΠΎ ΠΎΡ Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½ΡΠ°, ΠΊΡΠ΄Π΅ΡΠΎ Π½ΠΎΠ²ΠΈΡΡ Π΅ΡΠΈΠΊΠ΅Ρ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ ΠΊΡΠΌ ΡΠ΅Π³ΠΈΡΡΡΡΠ°.
ΠΠ° Π½ΠΎΠ²ΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΡΠΌ Π·Π° ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ Π±Π΅ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΎ Π΄Π° ΡΠ΅ ΠΎΡΠ΄Π°Π»Π΅ΡΠΈ ΠΎΡ ΡΡ Π΅ΠΌΠΈΡΠ΅ Π·Π° ΠΌΠ°ΡΠΊΠΈΡΠ°Π½Π΅ ΠΈ Π΄Π° ΡΠ΅ ΠΈΠ·Π³ΡΠ°Π΄ΠΈ ΠΏΡΠΎΡΠ΅Ρ Π½Π° ΠΌΠ΅ΡΠ°-ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π²ΡΠ΅ΠΊΠΈ ΠΎΡ ΠΊΠΎΠΈΡΠΎ ΡΡΡ ΡΠ°Π½ΡΠ²Π° ΠΊΡΠΏ ΠΎΡ:
- Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½ΡΡΡ, Π½Π° ΠΊΠΎΠΉΡΠΎ Π΅ ΠΈΠ·Π²ΡΡΡΠ΅Π½Π° ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡΡΠ° (Π½ΡΠΌΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π»ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΎ, ΠΏΡΠΎΠΌΠ΅Π½Π΅Π½ΠΎ ΠΈΠ»ΠΈ Π΅ ΠΎΡΡΠ°Π½Π°Π»ΠΎ ΡΡΡΠΎΡΠΎ Π² ΡΠ΅Π³ΠΈΡΡΡΡΠ° Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°);
- ΠΈ Π½Π°ΡΠΈΡ Π²ΡΡΡΠ΅ΡΠ΅Π½ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ, ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²Π°Ρ Π½Π° ΡΠ³Π»ΠΎΠ±Π΅Π½ΠΎΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅.
Π‘ Π΄ΡΡΠ³ΠΈ Π΄ΡΠΌΠΈ, Π±Π΅ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½ΠΎ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½ΠΈ ΡΠ°Π³ΠΎΠ²Π΅ Ρ Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½ΡΠΈ Π² Git.
ΠΡΠ°ΠΉΠ½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΈ ΠΎΠ±Ρ Π°Π»Π³ΠΎΡΠΈΡΡΠΌ
ΠΠΎΠ³Π°ΡΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Ρ ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ΡΠΎ, ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π²Π΅ΡΠ΅ ΠΈΠΌΠ°Ρ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·Π±ΠΈΡΠ°Ρ ΡΠ΅ΠΊΡΡΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΡΡΠΊΠ° ΡΠ°ΠΊΠ°Π²Π° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ° Π΅ Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½Π°:
- ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅ΠΏΡΠ°ΡΠΊΠΈ, Ρ.Π΅. Git ΡΠ°Π³ΠΎΠ²Π΅ ΠΈΠ»ΠΈ Git ΡΠ°Π·ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠΊΠ°Π½ΠΈΡΠ°Π½Π΅;
- ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΡΡΡΠ΅Π½ΠΈΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π·Π° Π²ΡΡΠΊΠ° ΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠΈΡ ΠΎΡ Π½Π°Π±ΠΎΡΠ°.
ΠΠ° ΠΈΠ»ΡΡΡΡΠ°ΡΠΈΡ, Π΅ΡΠΎ ΠΊΠ°ΠΊ Π·Π°ΠΏΠΎΡΠ½Π° Π΄Π° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅:
cleanup:
keepPolicies:
- references:
tag: /.*/
limit:
last: 10
- references:
branch: /.*/
limit:
last: 10
in: 168h
operator: And
imagesPerReference:
last: 2
in: 168h
operator: And
- references:
branch: /^(main|staging|production)$/
imagesPerReference:
last: 10
Π’Π°Π·ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΡΠ΄ΡΡΠΆΠ° ΡΡΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°, ΠΊΠΎΠΈΡΠΎ ΠΎΡΠ³ΠΎΠ²Π°ΡΡΡ Π½Π° ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π°:
- ΠΠ°ΠΏΠ°Π·Π΅ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ 10 Git ΡΠ°Π³ΠΎΠ²Π΅ (ΠΏΠΎ Π΄Π°ΡΠ° Π½Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ°Π³ΠΎΠ²Π΅).
- ΠΠ°ΠΏΠ°Π·Π΅ΡΠ΅ Π½Π΅ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ 2 ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½ΠΈ ΠΏΡΠ΅Π· ΠΏΠΎΡΠ»Π΅Π΄Π½Π°ΡΠ° ΡΠ΅Π΄ΠΌΠΈΡΠ° Π·Π° Π½Π΅ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ 10 ΡΠ΅ΠΌΠΈ Ρ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡ ΠΏΡΠ΅Π· ΠΏΠΎΡΠ»Π΅Π΄Π½Π°ΡΠ° ΡΠ΅Π΄ΠΌΠΈΡΠ°.
- ΠΠ°ΠΏΠ°Π·Π΅ΡΠ΅ 10 ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π·Π° ΠΊΠ»ΠΎΠ½ΠΎΠ²Π΅
main
,staging
ΠΈproduction
.
ΠΡΠ°ΠΉΠ½ΠΈΡΡ Π°Π»Π³ΠΎΡΠΈΡΡΠΌ ΡΠ΅ ΡΠ²Π΅ΠΆΠ΄Π° Π΄ΠΎ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΡΡΡΠΏΠΊΠΈ:
- ΠΠ·Π²Π»ΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠΈ ΠΎΡ ΡΠ΅Π³ΠΈΡΡΡΡΠ° Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈΡΠ΅.
- Π‘ ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π² Kubernetes, Π·Π°ΡΠΎΡΠΎ ΠΠ΅ΡΠ΅ ΡΠΌΠ΅ Π³ΠΈ ΠΈΠ·Π±ΡΠ°Π»ΠΈ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΡΡΠ΅Π· ΠΏΡΠΎΡΡΠ²Π°Π½Π΅ Π½Π° K8s API.
- Π‘ΠΊΠ°Π½ΠΈΡΠ°Π½Π΅ Π½Π° Git ΠΈΡΡΠΎΡΠΈΡ ΠΈ ΠΈΠ·ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°.
- ΠΡΠ΅ΠΌΠ°Ρ Π²Π°Π½Π΅ Π½Π° ΠΎΡΡΠ°Π½Π°Π»ΠΈΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.
ΠΡΡΡΠ°ΠΉΠΊΠΈ ΡΠ΅ ΠΊΡΠΌ Π½Π°ΡΠ°ΡΠ° ΠΈΠ»ΡΡΡΡΠ°ΡΠΈΡ, Π΅ΡΠΎ ΠΊΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΠ»ΡΡΠ²Π° Ρ werf:
ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π°, Π΄ΠΎΡΠΈ ΠΈ Π΄Π° Π½Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ werf, ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ Π·Π° ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΎ ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ - Π² Π΅Π΄Π½Π° ΠΈΠ»ΠΈ Π΄ΡΡΠ³Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ (ΡΠΏΠΎΡΠ΅Π΄ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π½ΠΈΡ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ Π·Π° ΠΌΠ°ΡΠΊΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ) - ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠΈ ΠΊΡΠΌ Π΄ΡΡΠ³ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ/ΠΏΠΎΠΌΠΎΡΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ. ΠΠ° Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΡΠΎΠ²Π°, Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ Π΅ Π΄Π° Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ Π²ΡΠ·Π½ΠΈΠΊΠ²Π°Ρ, ΠΈ Π΄Π° Π½Π°ΠΌΠ΅ΡΠΈΡΠ΅ ΠΎΠ½Π΅Π·ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π²ΡΠ² Π²Π°ΡΠΈΡ ΡΡΠ΅ΠΊ, ΠΊΠΎΠΈΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ Π΄Π° ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°ΡΠ΅ ΡΡΡ
Π½ΠΎΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉ-Π³Π»Π°Π΄ΠΊΠΎ. ΠΠ°Π΄ΡΠ²Π°ΠΌΠ΅ ΡΠ΅, ΡΠ΅ ΠΏΡΡΡΡ, ΠΊΠΎΠΉΡΠΎ ΠΈΠ·Π²ΡΡΠ²ΡΡ
ΠΌΠ΅, ΡΠ΅ Π²ΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π΅ Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΡΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΈΡ ΡΠΈ ΡΠ»ΡΡΠ°ΠΉ Ρ Π½ΠΎΠ²ΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΈ ΠΌΠΈΡΠ»ΠΈ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
- Π Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΊΡΡΠ½ΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ Π΅ΠΊΠΈΠΏΠΈ ΡΠ΅ ΡΠ±Π»ΡΡΠΊΠ²Π°Ρ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ ΠΏΡΠ΅ΠΏΡΠ»Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅Π³ΠΈΡΡΡΡΠ°.
- ΠΡΠΈ ΡΡΡΡΠ΅Π½Π΅ΡΠΎ Π½Π° ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΡΠ²ΠΎ Π΄Π° ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡ ΠΊΡΠΈΡΠ΅ΡΠΈΠΈΡΠ΅ Π·Π° ΡΠΌΠ΅ΡΡΠ½ΠΎΡΡ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ.
- ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠ΅, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π½ΠΈ ΠΎΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΈΡΠ΅ ΡΡΠ»ΡΠ³ΠΈ Π·Π° ΡΠ΅Π³ΠΈΡΡΡΡ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ, Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ Π΄Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅, ΠΊΠΎΠ΅ΡΠΎ Π½Π΅ Π²Π·Π΅ΠΌΠ° ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ βΠ²ΡΠ½ΡΠ½ΠΈΡ ΡΠ²ΡΡβ: ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π² Kubernetes, ΠΈ ΠΎΡΠΎΠ±Π΅Π½ΠΎΡΡΠΈΡΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠΈ Π½Π° Π΅ΠΊΠΈΠΏΠ°.
- ΠΡΠ²ΠΊΠ°Π²ΠΈΡΡ ΠΈ Π΅ΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ Π°Π»Π³ΠΎΡΠΈΡΡΠΌ ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠΌΠ° ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π·Π° CI/CD ΠΏΡΠΎΡΠ΅ΡΠΈΡΠ΅ ΠΈ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Π½Π΅ ΡΠ°ΠΌΠΎ Ρ Π΄Π°Π½Π½ΠΈ Π·Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π½Π° Docker.
PS
ΠΡΠΎΡΠ΅ΡΠ΅ΡΠ΅ ΡΡΡΠΎ Π² Π½Π°ΡΠΈΡ Π±Π»ΠΎΠ³:
- Β«
Π’Π°Π³Π²Π°Π½Π΅, Π±Π°Π·ΠΈΡΠ°Π½ΠΎ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ Π² werf builder: Π·Π°ΡΠΎ ΠΈ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠΈ? Β»; - Β«
3-ΠΏΠΎΡΠΎΡΠ½ΠΎ ΡΠ»ΠΈΠ²Π°Π½Π΅ ΠΊΡΠΌ werf: Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π² Kubernetes Ρ Helm βΠ½Π° ΡΡΠ΅ΡΠΎΠΈΠ΄ΠΈβ Β»; - Β«
ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° monorepo ΠΈ multirepo Π² werf ΠΈ ΠΊΠ°ΠΊΠ²ΠΎ ΠΎΠ±ΡΠΎ ΠΈΠΌΠ° Docker Registry Ρ ΡΠΎΠ²Π° Β»; - Β«
ΠΠ΅ΡΡΠΈΡ Π½Π° werf 1.1: ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΡΡΠ·Π΄Π°ΡΠ΅Π»Ρ Π΄Π½Π΅Ρ ΠΈ ΠΏΠ»Π°Π½ΠΎΠ²Π΅ Π·Π° Π±ΡΠ΄Π΅ΡΠ΅ΡΠΎ ".
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com