ãã®èšäºã§ã¯ãKubernetesã«é ä¿¡ãããã¯ã©ãŠããã€ãã£ãã¢ããªã±ãŒã·ã§ã³çšã®ææ°ã®CI / CDãã€ãã©ã€ã³ã®çŸå®ã«ãããŠãã³ã³ããã¬ãžã¹ããªïŒDocker Registryãšãã®é¡äŒŒç©ïŒã«èç©ãããã€ã¡ãŒãžã®ã¯ãªãŒãã³ã°ã®åé¡ã«ã€ããŠèª¬æããŸããç»åã®é¢é£æ§ãšããã®çµæãšããŠçããã¯ãªãŒãã³ã°ã®èªååãã¹ããŒã¹ã®ç¯çŽãããã³ããŒã ã®ããŒãºãžã®å¯Ÿå¿ã«ãããå°é£ãã®äž»ãªåºæºã瀺ãããŠããŸããæåŸã«ãç¹å®ã®ãªãŒãã³ãœãŒã¹ãããžã§ã¯ãã®äŸã䜿çšããŠããããã®åé¡ãã©ã®ããã«å æã§ãããã説æããŸãã
åæžã
ã³ã³ããã¬ãžã¹ããªå ã®ã€ã¡ãŒãžã®æ°ã¯æ¥éã«å¢å ããããå€ãã®ã¹ãã¬ãŒãžã¹ããŒã¹ãå æããå¯èœæ§ããããããã³ã¹ããå€§å¹ ã«å¢å ããŸããã¬ãžã¹ããªã§å æãããã¹ããŒã¹ã®èš±å®¹å¯èœãªå¢å ãå¶åŸ¡ãå¶éããŸãã¯ç¶æããããã«ã次ã®ããšãåãå ¥ããããŸãã
- ç»åã«ã¯åºå®æ°ã®ã¿ã°ã䜿çšããŸãã
- äœããã®æ¹æ³ã§ç»åãã¯ãªãŒã³ã¢ããããŸãã
æåã®å¶éã¯ãå°èŠæš¡ãªããŒã ã«æå¹ãªå ŽåããããŸããéçºè ã¯ïŒååãªæ°žä¹ çãªã¿ã°ãæã£ãŠããå Žåã¯
latest
ãmain
ãtest
ãboris
ãªã©ïŒãã¬ãžã¹ããªã®ãµã€ãºã¯èšæœ€ããªããšã¯ãªãŒãã³ã°ã«ã€ããŠèããªãããã«é·ãæéããããããšããããŸããçµå±ã®ãšããããã¹ãŠã®ç¡é¢ä¿ãªç»åãã»ã€ããæé€ã®ããã®äœæ¥ãæ®ã£ãŠããªãã ãã§ãïŒãã¹ãŠã¯éåžžã®ãŽãåéæ©ã«ãã£ãŠè¡ãããŸãïŒã
ãã ãããã®ã¢ãããŒãã¯éçºãå³ããå¶éããä»æ¥ã®CI / CDãããžã§ã¯ãã«é©çšã§ããããšã¯ãã£ãã«ãããŸãããèªååã¯éçºã®äžå¯æ¬ ãªéšåã«ãªããŸããããã«ãããæ°ããæ©èœããã¹ããå±éãããã³ãŠãŒã¶ãŒã«ã¯ããã«è¿ éã«æäŸã§ããŸããããšãã°ããã¹ãŠã®ãããžã§ã¯ãã§ãCIãã€ãã©ã€ã³ã¯ã³ãããããšã«èªåçã«äœæãããŸããã€ã¡ãŒãžãæ§ç¯ããŠãã¹ããããããã°ãšæ®ãã®ãã§ãã¯ã®ããã«ããŸããŸãªKubernetesåè·¯ã«ããŒã«ã¢ãŠãããŸãããã¹ãŠãããŸãããã°ãå€æŽã¯ãšã³ããŠãŒã¶ãŒã«å±ããŸãããããŠãããã¯é·ãéãã±ããç§åŠã§ã¯ãããŸããããå€ãã®äººã«ãšã£ãŠæ¥åžžç掻ã§ã-ããªãããã®èšäºãèªãã§ããã®ã§ãããããããªãã«ãšã£ãŠã§ãã
ãã°ãæé€ãããæ°ããæ©èœã䞊è¡ããŠéçºããããªãªãŒã¹ã¯1æ¥ã«æ°åå®è¡ã§ãããããéçºããã»ã¹ã«ã¯ããªãã®æ°ã®ã³ãããã䌎ãããšã¯æããã§ããã€ãŸããã¬ãžã¹ããªã«å€æ°ã®ã€ã¡ãŒãžããããŸãã..ããã®çµæãå¹æçãªã¬ãžã¹ããªã¯ãªãŒãã³ã°ãçµç¹åããåé¡ãæ·±å»ã«ãªããŸããç¡é¢ä¿ãªç»åã®åé€ã
ããããç»åãé¢é£ããŠãããã©ãããã©ã®ããã«å€æã§ããŸããïŒ
ç»åã®é¢é£æ§ã®åºæº
ã»ãšãã©ã®å Žåãäž»ãªåºæºã¯æ¬¡ã®ãšããã§ã
ã1ãæåã®ïŒãã¹ãŠã®äžã§æãæçœã§æãéèŠãªïŒç»åã¯ãçŸåšKubernetesã§äœ¿çšãããŠããç»åã§ãããããã®ã€ã¡ãŒãžãåé€ãããšãå¶äœã«æ·±å»ãªããŠã³ã¿ã€ã ã³ã¹ããçºçããå¯èœæ§ãããïŒããšãã°ãã¬ããªã±ãŒã·ã§ã³äžã«ã€ã¡ãŒãžãå¿ èŠã«ãªãå ŽåããããŸãïŒãããããã®åè·¯ã®ãããã°ã«åŸäºããããŒã ã®åŽåãç¡å¹ã«ãªããŸããïŒãã®ãããKubernetesã¯ã©ã¹ã¿ãŒã«ãã®ãããªç»åããªãããšãç£èŠããç¹å¥ãªPrometheusãšã¯ã¹ããŒã¿ãŒãäœæããŸãããïŒ
2ã2çªç®ïŒããŸãæçœã§ã¯ãããŸããããéåžžã«éèŠã§ãããæäœã«é¢é£ããŠããŸãïŒ-æ·±å»ãªå Žåã«ããŒã«ããã¯ããå¿ èŠãããç»ååé¡çŸåšã®ããŒãžã§ã³ã§ã¯ãããšãã°ãHelmã®å Žåããããã¯ãªãªãŒã¹ã®ä¿åããŒãžã§ã³ã§äœ¿çšãããã€ã¡ãŒãžã§ãã ïŒã¡ãªã¿ã«ããã«ã ã®ããã©ã«ãã®å¶éã¯256æ¬ã®æ¹èšçã§ãããã»ãšãã©èª°ããæ¬åœã«ä¿åããå¿ èŠããªãããã«ïŒããŒãžã§ã³ã®æ°ãå€ããïŒçµå±ããã®ãããç¹ã«ãæã ã¯ããŒãžã§ã³ãä¿åããããšã§ã§ããããã«ã䜿çšãããªãã¡å¿ èŠã«å¿ããŠããããŒã«ããã¯ãããŸãã
3. 3çªç®-éçºè ã®ããŒãºïŒçŸåšã®äœæ¥ã«é¢é£ãããã¹ãŠã®ç»åãããšãã°ãPRãæ€èšããŠããå ŽåãæåŸã®ã³ããããšãããšãã°åã®ã³ãããã«å¯Ÿå¿ããã€ã¡ãŒãžãæ®ãããšã¯çã«ããªã£ãŠããŸããããã«ãããéçºè ã¯ä»»æã®ã¿ã¹ã¯ã«ãã°ããæ»ããææ°ã®å€æŽãåŠçã§ããŸãã
4.4çªç®-ãã®ç»åã¢ããªã±ãŒã·ã§ã³ã®ããŒãžã§ã³ã«å¯Ÿå¿ããŸããæçµè£œåã¯v1.0.0ã20.04.01ãsierraãªã©ã§ãã
泚æïŒããã§å®çŸ©ãããŠããåºæºã¯ãããŸããŸãªäŒæ¥ã®æ°åã®éçºããŒã ãšã®ããåãã®çµéšã«åºã¥ããŠçå®ãããŸããããã ãããã¡ãããéçºããã»ã¹ã®è©³çŽ°ã䜿çšããã€ã³ãã©ã¹ãã©ã¯ãã£ïŒããšãã°ãKubernetesã¯äœ¿çšãããªãïŒã«ãã£ãŠã¯ããããã®åºæºãç°ãªãå ŽåããããŸãã
é©æ Œæ§ãšæ¢åã®ãœãªã¥ãŒã·ã§ã³
äžè¬çãªã³ã³ããã¬ãžã¹ããªãµãŒãã¹ã¯ãååãšããŠãç¬èªã®ã€ã¡ãŒãžã¯ãªãŒãã³ã°ããªã·ãŒãæäŸããŸãããããã®ãµãŒãã¹ã§ã¯ãã¿ã°ãã¬ãžã¹ããªããåé€ãããæ¡ä»¶ãå®çŸ©ã§ããŸãããã ãããããã®æ¡ä»¶ã¯ãååãäœææéãã¿ã°ã®æ°ãªã©ã®ãã©ã¡ãŒã¿ãŒã«ãã£ãŠå¶éãããŸã*ã
*ç¹å®ã®ã³ã³ããã¬ãžã¹ããªã®å®è£ ã«ãã£ãŠç°ãªããŸãã次ã®ãœãªã¥ãŒã·ã§ã³ãæ€èšããŸããïŒAzure CRãDocker HubãECRãGCRãGitHubããã±ãŒãžãGitLab Container RegistryãHarbour RegistryãJFrog ArtifactoryãQuay.io- 2020幎9æçŸåšã
ãã®ãã©ã¡ãŒã¿ã®ã»ããã¯ã4çªç®ã®åºæºãã€ãŸãããŒãžã§ã³ã«äžèŽããç»åãéžæããã®ã«ååã§ãããã ããä»ã®ãã¹ãŠã®åºæºã«ã€ããŠã¯ãæåŸ ãšè²¡åèœåã«å¿ããŠãäœããã®åŠ¥åæ¡ïŒããå³ããããŸãã¯éã«ãæ§ãããªæ¹éïŒãéžæããå¿ èŠããããŸãã
ããšãã°ãéçºè ã®ããŒãºã«é¢é£ãã3çªç®ã®åºæºã¯ãããŒã å ã®ããã»ã¹ãæŽçããããšã§è§£æ±ºã§ããŸããã€ãŸããç»åã®ç¹å®ã®åœåãç¹å¥ãªèš±å¯ãªã¹ããšå éšåæã®ç¶æã§ããããããæçµçã«ã¯ããã§ãèªååããå¿ èŠããããŸãããŸããæ¢è£œã®ãœãªã¥ãŒã·ã§ã³ã®å¯èœæ§ãååã§ãªãå Žåã¯ãç¬èªã®ããšãè¡ãå¿ èŠããããŸãã
ç¶æ³ã¯æåã®2ã€ã®åºæºãšäŒŒãŠããŸããå€éšã·ã¹ãã ïŒã¢ããªã±ãŒã·ã§ã³ããããã€ãããŠããã·ã¹ãã ïŒãã®å Žåã¯KubernetesïŒããããŒã¿ãåä¿¡ããªããšæºããããšãã§ããŸããïŒã
Gitã®ã¯ãŒã¯ãããŒã®å³
Gitã§æ¬¡ã®ãããªäœæ¥ãè¡ã£ãŠãããšããŸãã
å³ã®é ã®ä»ããã¢ã€ã³ã³ã¯ãçŸåšä»»æã®ãŠãŒã¶ãŒïŒãšã³ããŠãŒã¶ãŒããã¹ã¿ãŒããããŒãžã£ãŒãªã©ïŒã®Kubernetesã«å±éãããŠããããŸãã¯éçºè ããããã°ã«äœ¿çšããŠããã³ã³ãããŒã€ã¡ãŒãžã瀺ããŸããããã³åæ§ã®ç®æšã
ããŒãžããªã·ãŒã§ãæå®ããã¿ã°åã®ç»åã®ã¿ãä¿æïŒåé€ã§ã¯ãªãïŒã§ããå Žåã¯ã©ããªããŸããïŒ
æããã«ããã®ã·ããªãªã¯èª°ãåã°ãªãã§ãããã
ããªã·ãŒã§ãç¹å®ã®æééé/æè¿ã®ã³ãããæ°ã®éãç»åãåé€ã§ããªãããã«ããå Žåãäœãå€ãããŸããïŒ
çµæã¯ã¯ããã«è¯ããªããŸããããããã§ãçæ³ããã¯ã»ã©é ãã§ããçµå±ã®ãšããããã°ããããã°ããããã«ã¬ãžã¹ããªã«ã€ã¡ãŒãžãå¿ èŠãšããïŒãŸãã¯K8ã«ãããã€ããïŒéçºè ããŸã ããŸã...
åžå Žã®çŸåšã®ç¶æ³ãèŠçŽãããšãã³ã³ããã¬ãžã¹ããªã§å©çšå¯èœãªæ©èœã¯ãã¯ãªãŒãã³ã°æã«ååãªæè»æ§ãæäŸããŸãããäž»ãªçç±ã¯ãå¯èœæ§ããªãããšã§ããå€ã®äžçãšå¯Ÿè©±ããŸãããã®æè»æ§ãå¿ èŠãšããããŒã ã¯ãDocker Registry APIïŒãŸãã¯å¯Ÿå¿ããå®è£ ã®ãã€ãã£ãAPIïŒã䜿çšããŠããå€éšãã§ã€ã¡ãŒãžã®åé€ãåå¥ã«å®è£ ããããšãäœåãªããããŠããããšãããããŸããã
ãã ããããŸããŸãªã¬ãžã¹ããªã䜿çšããããŸããŸãªããŒã ã®ç»åã¯ãªãŒãã³ã°ãèªååãããŠãããŒãµã«ãœãªã¥ãŒã·ã§ã³ãæ¢ããŠããŸãã...
ãŠãããŒãµã«ã€ã¡ãŒãžã¯ãªãŒãã³ã°ãžã®é
ãã®å¿ èŠæ§ã¯ã©ãããæ¥ãã®ã§ããïŒäºå®ãç§ãã¡ã¯ç¬ç«ããéçºè ã°ã«ãŒãã§ã¯ãªããäžåºŠã«å€ãã®éçºè ã«ãµãŒãã¹ãæäŸããCI / CDã®åé¡ãå æ¬çã«è§£æ±ºããã®ã«åœ¹ç«ã€ããŒã ã§ãããããŠããã®ããã®äž»ãªæè¡ããŒã«ã¯ããªãŒãã³ãœãŒã¹ã®werfãŠãŒãã£ãªãã£ã§ãããã®ç¹åŸŽã¯ãåäžã®æ©èœãå®è¡ããã®ã§ã¯ãªããçµã¿ç«ãŠããå±éãŸã§ã®ãã¹ãŠã®æ®µéã§ç¶ç¶çãªé ä¿¡ããã»ã¹ã䌎ãããšã§ãã
ã¬ãžã¹ããªãžã®ã€ã¡ãŒãžã®å ¬é*ïŒãã«ãçŽåŸïŒã¯ããã®ãããªãŠãŒãã£ãªãã£ã®æãããªæ©èœã§ãããããŠãç»åã¯ä¿ç®¡ã®ããã«ããã«çœ®ãããã®ã§ãä¿ç®¡ãç¡å¶éã§ãªãå Žåã¯ããã®åŸã®ã¯ãªãŒãã³ã°ã«è²¬ä»»ãè² ãå¿ èŠããããŸããæå®ããããã¹ãŠã®åºæºãæºãããããã§ã©ã®ããã«æåãåãããã«ã€ããŠãããã«èª¬æããŸãã
*ã¬ãžã¹ããªèªäœã¯ç°ãªãå ŽåããããŸããïŒDocker RegistryãGitLab Container RegistryãHarbourãªã©ïŒããŠãŒã¶ãŒã¯åãåé¡ã«çŽé¢ããŸãããã®å Žåã®ãŠãããŒãµã«ãœãªã¥ãŒã·ã§ã³ã¯ãã¬ãžã¹ããªã®å®è£ ã«äŸåããŸãããã¬ãžã¹ããªèªäœã®å€éšã§å®è¡ããããã¹ãŠã®äººã«åãåäœãæäŸããŸãã
å®è£ ã®äŸãšããŠ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
ãã®æ§æã«ã¯ã次ã®ã«ãŒã«ã«æºæ ãã3ã€ã®ããªã·ãŒãå«ãŸããŠããŸãã
- æåŸã®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: ».