ãã®èšäºã§ã¯ãKubernetes ã«é
ä¿¡ãããã¯ã©ãŠã ãã€ãã£ã ã¢ããªã±ãŒã·ã§ã³ã®ææ°ã® CI/CD ãã€ãã©ã€ã³ã®çŸå®ã«ããããã³ã³ãã ã¬ãžã¹ã㪠(Docker ã¬ãžã¹ããªãšãã®é¡äŒŒç©) ã«èç©ãããã€ã¡ãŒãžã®ã¯ãªãŒãã³ã°ã®åé¡ã«ã€ããŠèª¬æããŸãã ç»åã®é¢é£æ§ã«é¢ããäž»ãªåºæºãšããã®çµæçããæž
æã®èªååãã¹ããŒã¹ã®ç¯çŽãããŒã ã®ããŒãºãæºããéã®å°é£ã«ã€ããŠèª¬æããŸãã æåŸã«ãç¹å®ã®ãªãŒãã³ãœãŒã¹ ãããžã§ã¯ãã®äŸã䜿çšããŠããããã®å°é£ãã©ã®ããã«å
æã§ãããã説æããŸãã
å°å ¥
ã³ã³ãã㌠ã¬ãžã¹ããªå ã®ã€ã¡ãŒãžã®æ°ã¯æ¥éã«å¢å ããããå€ãã®ã¹ãã¬ãŒãžé åãå æãããããã³ã¹ããå€§å¹ ã«å¢å ããå¯èœæ§ããããŸãã ã¬ãžã¹ããªå ã§å æãããã¹ããŒã¹ã®èš±å®¹å¯èœãªå¢å ãå¶åŸ¡ãå¶éããŸãã¯ç¶æããã«ã¯ã次ã®ããšãèªããããŸãã
- ç»åã«ã¯åºå®æ°ã®ã¿ã°ã䜿çšããŸãã
- äœããã®æ¹æ³ã§ç»åãã¯ãªãŒã³ã¢ããããŸãã
æåã®å¶éã¯ãå°èŠæš¡ãªããŒã ã§ã¯èš±å®¹ã§ããå ŽåããããŸãã éçºè
ãååãªæ°žç¶ã¿ã°ãæã£ãŠããå Žå (latest
, main
, test
, boris
ãªã©ïŒãã¬ãžã¹ããªã®ãµã€ãºãå¢å€§ããããšã¯ãªããé·æéã«ããã£ãŠã¬ãžã¹ããªã®ã¯ãªãŒãã³ã°ã«ã€ããŠèããå¿
èŠã¯ãããŸããã çµå±ã®ãšãããç¡é¢ä¿ãªç»åã¯ãã¹ãŠæ¶å»ãããã¯ãªãŒãã³ã°ããäœæ¥ã¯ãŸã£ããæ®ãããŸãã (ãã¹ãŠã¯éåžžã®ã¬ããŒãž ã³ã¬ã¯ã¿ãŒã«ãã£ãŠè¡ãããŸã)ã
ãã ãããã®ã¢ãããŒãã¯éçºãå€§å¹ ã«å¶éããææ°ã® CI/CD ãããžã§ã¯ãã«ã¯ã»ãšãã©é©çšã§ããŸããã éçºã«äžå¯æ¬ ãªéšåã¯ã èªååããã«ãããæ°ããæ©èœãããè¿ éã«ãã¹ããå±éãããŠãŒã¶ãŒã«æäŸã§ããããã«ãªããŸãã ããšãã°ããã¹ãŠã®ãããžã§ã¯ãã§ãã³ãããããšã« CI ãã€ãã©ã€ã³ãèªåçã«äœæãããŸãã ãã®äžã§ãã€ã¡ãŒãžã¯çµã¿ç«ãŠããããã¹ãããããããã°ãšæ®ãã®ãã§ãã¯ã®ããã«ããŸããŸãª Kubernetes åè·¯ã«ããŒã«ã¢ãŠãããããã¹ãŠãé 調ã§ããã°å€æŽããšã³ã ãŠãŒã¶ãŒã«å±ããŸãã ãããŠãããã¯ãã¯ããã±ããç§åŠã§ã¯ãªããå€ãã®äººã«ãšã£ãŠããããããã®èšäºãèªãã§ããããªãã«ãšã£ãŠã¯æ¥åžžçãªåºæ¥äºã§ãã
ãã°ã®ä¿®æ£ãšæ°æ©èœã®éçºã¯äžŠè¡ããŠè¡ããããªãªãŒã¹ã¯ XNUMX æ¥ã«æ°åè¡ãããããšããããããéçºããã»ã¹ã«ã¯ããªãã®æ°ã®ã³ãããã䌎ãããšã¯æããã§ãã ã¬ãžã¹ããªå ã®å€æ°ã®ã€ã¡ãŒãžã ãã®çµæãã¬ãžã¹ããªã®å¹æçãªã¯ãªãŒãã³ã°ãçµç¹åãããšããåé¡ãçããŸãã ç¡é¢ä¿ãªç»åãåé€ããŸãã
ããããç»åãé¢é£æ§ããããã©ããã¯ã©ããã£ãŠå€æããã®ã§ãããã?
ç»åã®é¢é£æ§ã®åºæº
ã»ãšãã©ã®å Žåãäž»ãªåºæºã¯æ¬¡ã®ãšããã§ãã
1. æåã® (ãã¹ãŠã®äžã§æãæçœã§æãéèŠãª) ã®ç»åã¯ã çŸåšKubernetesã§äœ¿çšãããŠããã ãããã®ã€ã¡ãŒãžãåé€ãããšãæ¬çªç°å¢ã®ããŠã³ã¿ã€ã ã«å€å€§ãªã³ã¹ããçºçããã (ããšãã°ãã¬ããªã±ãŒã·ã§ã³ã«ã€ã¡ãŒãžãå¿
èŠã«ãªãå ŽåããããŸã)ãããŒã ã®ã«ãŒãã®ãããã°äœæ¥ãç¡å¹ã«ãªã£ããããå¯èœæ§ããããŸãã (ãã®ãããç¹å¥ãªãã®ãäœããŸãã)
2. XNUMX çªç® (ããã»ã©æçœã§ã¯ãããŸããããéåžžã«éèŠã§ããããã¯ãæŸåã«é¢é£ããŸã) - ç»å é倧ãªåé¡ãæ€åºãããå Žåã®ããŒã«ããã¯ã«å¿ èŠ çŸåšã®ããŒãžã§ã³ã§ã¯ã ããšãã°ãHelm ã®å Žåããããã¯ãªãªãŒã¹ã®ä¿åãããããŒãžã§ã³ã§äœ¿çšãããã€ã¡ãŒãžã§ãã (ã¡ãªã¿ã«ãHelm ã®ããã©ã«ãã®å¶é㯠256 ãªããžã§ã³ã§ãããå®éã«ä¿åããå¿ èŠããã人ã¯ã»ãšãã©ããªãã§ãããã ãã®ãã㪠å€æ°ã®ããŒãžã§ã³?..) çµå±ã®ãšãããç§ãã¡ã¯ç¹ã«ãåŸã§äœ¿çšã§ããããã«ããŒãžã§ã³ãä¿åããŸãã å¿ èŠã«å¿ããŠãããŒã«ããã¯ãããŸãã
3. XNUMXçªç® - éçºè ã®ããŒãºïŒçŸåšã®äœåã«é¢é£ãããã¹ãŠã®ç»åã ããšãã°ãPR ãæ€èšããŠããå ŽåãæåŸã®ã³ããããããšãã°åã®ã³ãããã«å¯Ÿå¿ããã€ã¡ãŒãžãæ®ãã®ã¯çã«ããªã£ãŠããŸããããã«ãããéçºè ã¯ããã«ä»»æã®ã¿ã¹ã¯ã«æ»ããææ°ã®å€æŽã䜿çšããŠäœæ¥ã§ããŸãã
4. XNUMX çªç® - ã€ã¡ãŒãž ã¢ããªã±ãŒã·ã§ã³ã®ããŒãžã§ã³ã«å¯Ÿå¿ãããã€ãŸãæçµè£œå: v1.0.0ã20.04.01/XNUMX/XNUMXãsierra ãªã©ã
泚æ: ããã§å®çŸ©ãããåºæºã¯ãããŸããŸãªäŒæ¥ã®æ°åã®éçºããŒã ãšå¯Ÿè©±ããçµéšã«åºã¥ããŠçå®ãããŸããã ãã ããåœç¶ãªãããéçºããã»ã¹ã®è©³çŽ°ã䜿çšãããã€ã³ãã©ã¹ãã©ã¯ã㣠(Kubernetes ã䜿çšãããªããªã©) ã«ãã£ãŠããããã®åºæºã¯ç°ãªãå ŽåããããŸãã
è³æ Œãšæ¢åã®ãœãªã¥ãŒã·ã§ã³
ã³ã³ãã ã¬ãžã¹ããªã䜿çšããäžè¬çãªãµãŒãã¹ã¯ãéåžžãç¬èªã®ã€ã¡ãŒãž ã¯ãªãŒã³ã¢ãã ããªã·ãŒãæäŸããŠããããã®äžã§ã¿ã°ãã¬ãžã¹ããªããåé€ããæ¡ä»¶ãå®çŸ©ã§ããŸãã ãã ãããããã®æ¡ä»¶ã¯ãååãäœææå»ãã¿ã°*ã®æ°ãªã©ã®ãã©ã¡ãŒã¿ã«ãã£ãŠå¶éãããŸãã
* ç¹å®ã®ã³ã³ãã㌠ã¬ãžã¹ããªã®å®è£ ã«äŸåããŸãã 次ã®ãœãªã¥ãŒã·ã§ã³ã®å¯èœæ§ãæ€èšããŸãã: Azure CRãDocker HubãECRãGCRãGitHub PackagesãGitLab Container RegistryãHarbor RegistryãJFrog ArtifactoryãQuay.io - 2020 幎 XNUMX æçŸåšã
ãã®ãã©ã¡ãŒã¿ã®ã»ããã¯ãXNUMX çªç®ã®åºæºãã€ãŸãããŒãžã§ã³ã«å¯Ÿå¿ããã€ã¡ãŒãžãéžæããã®ã«ååã§ãã ãã ããä»ã®ãã¹ãŠã®åºæºã«ã€ããŠã¯ãæåŸ ãšè²¡åèœåã«å¿ããŠãããçš®ã®åŠ¥åç (ããå³ããæ¿çããŸãã¯éã«ããå¯å€§ãªæ¿ç) ãéžæããå¿ èŠããããŸãã
ããšãã°ãéçºè ã®ããŒãºã«é¢é£ãã XNUMX çªç®ã®åºæºã¯ãã€ã¡ãŒãžã®ç¹å®ã®ååä»ããç¹å¥ãªèš±å¯ãªã¹ããšå éšåæã®ç¶æãªã©ãããŒã å ã§ããã»ã¹ãçµç¹ããããšã§è§£æ±ºã§ããŸãã ããããæçµçã«ã¯äŸç¶ãšããŠèªååããå¿ èŠããããŸãã ãŸããæ¢è£œã®ãœãªã¥ãŒã·ã§ã³ã®æ©èœãååã§ãªãå Žåã¯ãç¬èªã«äœããè¡ãå¿ èŠããããŸãã
æåã® XNUMX ã€ã®åºæºã®ç¶æ³ã¯äŒŒãŠããŸããå€éšã·ã¹ãã ãã€ãŸãã¢ããªã±ãŒã·ã§ã³ããããã€ãããŠããã·ã¹ãã (ãã®å Žå㯠Kubernetes) ããããŒã¿ãåä¿¡ããªãéãããããã®åºæºãæºããããšã¯ã§ããŸããã
Git ã®ã¯ãŒã¯ãããŒã®å³è§£
Git ã§æ¬¡ã®ãããªäœæ¥ãããŠãããšããŸãã
å³å
ã®é ã®ä»ããã¢ã€ã³ã³ã¯ãçŸåš Kubernetes ã«ãããã€ãããŠããã³ã³ãã ã€ã¡ãŒãž (ãšã³ã ãŠãŒã¶ãŒããã¹ã¿ãŒããããŒãžã£ãŒãªã©)ããŸãã¯ãããã°ãªã©ã®ç®çã§éçºè
ã«ãã£ãŠäœ¿çšãããŠããã³ã³ãã ã€ã¡ãŒãžã瀺ããŸãã
ã¯ãªãŒã³ã¢ãã ããªã·ãŒã§ã€ã¡ãŒãžã®ä¿æã®ã¿ãèš±å¯ããã (åé€ãããªã) å Žåã¯ã©ããªããŸãã æå®ãããã¿ã°åã«ãã£ãŠ?
æããã«ããã®ãããªã·ããªãªã§ã¯èª°ã幞ãã«ãªããŸããã
ããªã·ãŒã§ç»åãåé€ã§ããªãããã«ãããšäœãå€ãããŸãã? æå®ãããæééé / æåŸã®ã³ãããæ°ã«å¿ããŠ?
çµæã¯ããªãè¯ããªããŸãããããŸã çæ³ã«ã¯çšé ãã§ãã çµå±ã®ãšããããã°ããããã°ããããã«ã¬ãžã¹ããªå
ã®ã€ã¡ãŒãž (ãŸã㯠K8 ã«ãããã€ãããã€ã¡ãŒãž) ãå¿
èŠãšããéçºè
ããŸã ããŸã...
çŸåšã®åžå Žç¶æ³ãèŠçŽãããšãã³ã³ãã ã¬ãžã¹ããªã§å©çšã§ããæ©èœã¯ãã¯ãªãŒãã³ã°æã«ååãªæè»æ§ãæäŸã§ããŸããããã®äž»ãªçç±ã¯æ¬¡ã®ãšããã§ãã å€ã®äžçãšå¯Ÿè©±ããæ¹æ³ããªãã ãã®ãããªæè»æ§ãå¿ èŠãšããããŒã ã¯ãDocker Registry API (ãŸãã¯å¯Ÿå¿ããå®è£ ã®ãã€ãã£ã API) ã䜿çšããŠããå€éšãããã€ã¡ãŒãžåé€ãç¬èªã«å®è£ ããå¿ èŠãããããšãããããŸããã
ããããç§ãã¡ã¯ãç°ãªãã¬ãžã¹ããªã䜿çšããããŸããŸãªããŒã ã®ã€ã¡ãŒãž ã¯ãªãŒã³ã¢ãããèªååããæ±çšãœãªã¥ãŒã·ã§ã³ãæ¢ããŠããŸããã
ãŠãããŒãµã«ãªç»åã¯ãªãŒãã³ã°ãžã®é
ãã®ããŒãºã¯ã©ãããæ¥ãã®ã§ãããã? å®éãç§ãã¡ã¯åå¥ã®éçºè
ã°ã«ãŒãã§ã¯ãªããå€ãã®éçºè
ã«åæã«ãµãŒãã¹ãæäŸããCI/CD ã®åé¡ãå
æ¬çã«è§£æ±ºããã®ã«åœ¹ç«ã€ããŒã ã§ãã ãã®ããã®äž»ãªæè¡ããŒã«ã¯ãªãŒãã³ãœãŒã¹ ãŠãŒãã£ãªãã£ã§ã
ã€ã¡ãŒãžã (ãã«ãçŽåŸã«) ã¬ãžã¹ããª* ã«å ¬éããããšã¯ããã®ãããªãŠãŒãã£ãªãã£ã®åœç¶ã®æ©èœã§ãã ãŸããç»åã¯ä¿åã®ããã«ããã«é 眮ããããããã¹ãã¬ãŒãžãç¡å¶éã§ãªãå Žåã¯ããã®åŸã®ç»åã®ã¯ãªãŒãã³ã°ã¯èªåã§è¡ãå¿ èŠããããŸãã æå®ãããåºæºããã¹ãŠæºãããã©ã®ããã«ããŠããã«æåãããã«ã€ããŠã¯ãããã«è©³ãã説æããŸãã
* ã¬ãžã¹ããªèªäœã¯ç°ãªãå ŽåããããŸãã (Docker ã¬ãžã¹ããªãGitLab Container RegistryãHarbor ãªã©)ããŠãŒã¶ãŒã¯åãåé¡ã«çŽé¢ããŸãã ãã®å Žåã®æ®éçãªè§£æ±ºçã¯ã¬ãžã¹ããªã®å®è£ ã«ã¯äŸåããŸããã ã¯ã¬ãžã¹ããªèªäœã®å€éšã§å®è¡ãããå šå¡ã«åãåäœãæäŸããŸãã
ç§ãã¡ã¯å®è£ äŸãšã㊠werf ã䜿çšããŠããŸããã䜿çšãããã¢ãããŒããåæ§ã®åé¡ã«çŽé¢ããŠããä»ã®ããŒã ã«åœ¹ç«ã€ããšãé¡ã£ãŠããŸãã
ããã§ç§ãã¡ã¯å¿ãããªããŸãã å€éš ã³ã³ããã®ã¬ãžã¹ããªã«ãã§ã«çµã¿èŸŒãŸããŠããæ©èœã®ä»£ããã«ãã€ã¡ãŒãžãã¯ãªãŒãã³ã°ããã¡ã«ããºã ã®å®è£
ã æåã®ã¹ãããã¯ãDocker Registry API ã䜿çšããŠãã¿ã°ã®æ°ãšäœææéã«é¢ããåãåºæ¬ããªã·ãŒãäœæããããšã§ãã (åè¿°)ã ãããã«è¿œå ãããŸãã å°å
¥ãããã€ã³ãã©ã¹ãã©ã¯ãã£ã§äœ¿çšãããã€ã¡ãŒãžã«åºã¥ãèš±å¯ãªã¹ããã€ãŸãKubernetesã åŸè
ã®å ŽåãKubernetes API ã䜿çšããŠãããã€ããããã¹ãŠã®ãªãœãŒã¹ãå埩åŠçããå€ã®ãªã¹ããååŸããã ãã§ååã§ããã 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
ãã®æ§æã«ã¯ã次ã®ã«ãŒã«ã«æºæ ãã XNUMX ã€ã®ããªã·ãŒãå«ãŸããŠããŸãã
- ææ° 10 åã® Git ã¿ã°ã®ã€ã¡ãŒãžãä¿åããŸã (ã¿ã°ã®äœææ¥é )ã
- å é±ã®ã¢ã¯ãã£ããã£ãå«ãŸããã¹ã¬ããã 2 å以äžã§ããã°ãå é±ã«å ¬éãããç»å㯠10 åãŸã§ä¿åããŠãã ããã
- æçšã®ç»åã 10 æä¿å
main
,staging
Оproduction
.
æçµçãªã¢ã«ãŽãªãºã ã¯æ¬¡ã®ã¹ãããã«èŠçŽãããŸãã
- ã³ã³ãã㌠ã¬ãžã¹ããªãããããã§ã¹ããååŸããŸãã
- Kubernetes ã§äœ¿çšãããã€ã¡ãŒãžãé€å€ããŸãã ãããã¯ãK8s API ãããŒãªã³ã°ããããšã«ãã£ãŠãã§ã«äºåã«éžæãããŠããŸãã
- Git å±¥æŽãã¹ãã£ã³ããæå®ãããããªã·ãŒã«åºã¥ããŠã€ã¡ãŒãžãé€å€ããŸãã
- æ®ã£ãç»åãåé€ããŸãã
å³ã«æ»ããšãwerf ã§ã¯æ¬¡ã®ãããªããšãèµ·ãããŸãã
ãã ããwerf ã䜿çšããªãå Žåã§ããé«åºŠãªã€ã¡ãŒãž ã¯ãªãŒãã³ã°ã«å¯Ÿããåæ§ã®ã¢ãããŒã (ã€ã¡ãŒãžã®ã¿ã°ä»ãã«å¯Ÿããæšå¥šã¢ãããŒãã«å¿ããŠ) ãä»ã®ã·ã¹ãã /ãŠãŒãã£ãªãã£ã«é©çšã§ããŸãã ãããè¡ãã«ã¯ãçºçããåé¡ãèšæ¶ãããã®è§£æ±ºçãã§ããã ãã¹ã ãŒãºã«çµ±åã§ããæ©äŒãã¹ã¿ãã¯å
ã§èŠã€ããã ãã§ååã§ãã ç§ãã¡ãæ©ãã§ããéããããªãã®ç¹å®ã®ã±ãŒã¹ãæ°ããªè©³çŽ°ãšèãã§èŠãã®ã«åœ¹ç«ã€ããšãé¡ã£ãŠããŸãã
ãŸãšã
- é ããæ©ãããã»ãšãã©ã®ããŒã ã¯ã¬ãžã¹ã㪠ãªãŒããŒãããŒã®åé¡ã«ééããŸãã
- 解決çãæ¢ããšãã¯ããŸãç»åã®é¢é£æ§ã®åºæºã決å®ããå¿ èŠããããŸãã
- 人æ°ã®ããã³ã³ãã ã¬ãžã¹ã㪠ãµãŒãã¹ãæäŸããããŒã«ã䜿çšãããšããå€éšã®äžçããã€ãŸã Kubernetes ã§äœ¿çšãããã€ã¡ãŒãžãããŒã ã®ã¯ãŒã¯ãããŒã®ç¹æ®æ§ãèæ ®ããªããéåžžã«ã·ã³ãã«ãªã¯ãªãŒã³ã¢ãããçµç¹ã§ããŸãã
- æè»ã§å¹ççãªã¢ã«ãŽãªãºã ã¯ãCI/CD ããã»ã¹ãç解ããDocker ã€ã¡ãŒãž ããŒã¿ã ããæäœããå¿ èŠã¯ãããŸããã
PS
ç§ãã¡ã®ããã°ããèªã¿ãã ãã:
- «
werf ãã«ããŒã®ã³ã³ãã³ãããŒã¹ã®ã¿ã°ä»ã: ãªãããããŠã©ã®ããã«æ©èœããã®ã§ãããã? "; - «
werf ãžã® 3 æ¹åããŒãž: Helm ãã匷åã«ã䜿çšãã Kubernetes ãžã®ãããã€ã¡ã³ã "; - «
werf ã§ã®ã¢ããªããžããªãšãã«ããªããžããªã®ãµããŒããšãDocker ã¬ãžã¹ããªã¯ãããšäœã®é¢ä¿ããããŸãã "; - «
werf 1.1 ãªãªãŒã¹: çŸåšã®ãã«ããŒã®æ¹åãšå°æ¥ã®èšç» 'ã
åºæïŒ habr.com