Docker ãã£ããã³ã¯ããã®åéã®å°éå®¶ã§ãããDocker ã®ç¥èãä»ã®äººãšå ±æããããšã«æ ç±ã泚ãã§ããã³ãã¥ããã£ã®éžã°ããã¡ã³ããŒã§ãã ãDocker Captains Take 5ãã¯å®æçãªããã°ã·ãªãŒãºã§ããã£ããã³ã詳ããèŠãŠãDockerã®æé«ã®ãã³ãããç«ãšç¬ã®ã©ã¡ãã奜ãã(å人çã«ã¯ã¯ ãžã© ãš ã«ã¡ ã奜ãã§ã)ãŸã§ãåãå¹ åºã質åãããŸãã 仿¥ã¯ãæè¿ãã£ããã³ãºããã°ã©ã ã«åå ãããžã§ãŒã ãºã¹ããªã³ã«ã€ã³ã¿ãã¥ãŒããŠããŸãã 圌ã¯DiveIntoã®DevOpsã³ã³ãµã«ã¿ã³ãå Œã³ãŒã¹/ã³ã³ãã³ãã¯ãªãšãŒã¿ãŒã§ãããè±åœã®ããŒããã©ãŒãã·ã£ãŒãæ ç¹ãšããŠããŸãã LinkedIn ãš Twitterã§ãžã§ãŒã ãºã®ãœãŒã·ã£ã«ããã§ãã¯ããŠãã ãã!

Dockerãæåã«ç¥ã£ãã®ã¯ãã€/ã©ã®ããã«ã§ãã?
ç§ã¯åæã®ISPäžä»£ã®äžå¡ã§ãããããç§ã®åæã®ãã£ãªã¢ã¯ã1998幎ãã2000幎ã«è±åœã§æåã®ã€ã³ã¿ãŒããããããã€ããŒã®1ã€ã§ããããŒã¢ã³ã€ã³ã¿ãŒãããã§åãããšã§ããã
åœæãWeb/DNS/é»åã¡ãŒã«ããã®ä»ã®ãµãŒãã¹ãªã©ãç¬èªã®ç®¡çäžã·ã¹ãã (éåžžã¯èªå® ã®é£åšæ£ã«é ãããã±ãŒãã«ã¢ãã ãä»ããŠäžçäžã«æäŸããã)ã§å人ã®ISPãµãŒãã¹ããã¹ãããŠæäŸããããšã¯ã¯ãŒã«ã§ããã
æä»£ãå€ãããéèŠãªãµãŒãã¹ãšãã¹ãã£ã³ã°ã®ããã®ããé©åãªã¯ã©ãŠãããŒã¹ã®ãœãªã¥ãŒã·ã§ã³ã«ç§»è¡ããŸããããç§ã¯åžžã«ã·ã¹ãã 管çãšã®ã³ã¹ãã¬ã«æ ç±ã泚ãã§ããŸããã åãæ ç±ãæã€å人ãç§ã« linuxserver.io å§ããŸããã ããã¯ãäžè¬çãªDockerã€ã¡ãŒãžã®ããªãŒãã管çããã³ç¶æããåªãããªãœãŒã¹ã§ãã
æåã§å®è¡ããŠãããµãŒãã¹ã®å€ãããç¬èªã® Docker ã€ã¡ãŒãžãäœæããæ¹æ³ãåŠã¶ããã®åç §ãšããŠãã€ã¡ãŒãžãŸã㯠Dockerfile ã䜿çšã㊠Docker ã«ç§»è¡ããŸããã
Dockerã䜿ãå§ããããã®åªããæ¹æ³ãæ¢ããŠããå Žåã¯ãlinuxserver.io ã§å©çšå¯èœãªãªãœãŒã¹ã確èªããããšã匷ããå§ãããŸãã
ISPã®ãã£ãªã¢ã®åæã«ãæ°ããã¹ã¿ãŒã¿ãŒãšå ±æããã¢ããã€ã¹ã¯ãããã¯ã¹ã§ISPãäœæããŠèªå·±ãã¹ãããããšã§ããã
æ¬è³ªçã«ã¯ãWebãµãŒããŒ(åœæã¯Apacheã䜿çš)ãé»åã¡ãŒã«(Eximã䜿çš)ãDNSãµãŒããŒ(ãã€ã³ãã䜿çš)ãã«ã¹ã¿ã ãã¡ã€ã³åãšçµã¿åãããŠãã€ã³ã¿ãŒãããäžã§å©çšã§ããããã«ããŸãã ãããã®ãããã³ã«ãã©ã®ããã«æ©èœããããçè§£ããããã®çŽ æŽãããåŠç¿æ©äŒãæäŸããŸããã
仿¥ãç§ã®ã¢ããã€ã¹ã¯ããã詊ãããšã§ãããDockerãããã¯ã¹ããŠããŸã!
ãæ°ã«å ¥ãã®Dockerã³ãã³ãã¯äœã§ãã?
ç§ã®ãæ°ã«å
¥ãã®ããã«ãŒã³ãã³ã㯠docker buildx. ã¢ãŒã ã¢ãŒããã¯ãã£ã®æé·ã«äŒŽãã docker buildx ç§ãéåžžã«äŸåããŠããåªãããªãœãŒã¹ã§ãã ã³ã³ãã³ãã¯ãªãšãŒã¿ãŒã§ããç§ã¯ãDockerãå¹
åºã掻çšããŠã誰ããèªåã®ãªãœãŒã¹ã§å©çšã§ããã©ãç°å¢ãäœæããŠããŸãã ç§ã® "Dive Into Ansible"ãªããžã㪠ãèŠãŠãdocker-composeãå©çšãã250k以äžã®ãã«ããã£ãäŸãèŠãŠãã ããã
ã»ãã®æ°å¹ŽåãAMD64ãšäžç·ã«armã®ç»åãæ§ç¯ããããšã¯ãç§ã®å°åã§ã¯ããããšèŠãªãããŠããå¯èœæ§ããããŸãã ç§ã®çåŸã®ããäžéšã ããããŒãœãã«ã³ã³ãã¥ãŒãã£ã³ã°ã«RaspberryPiã䜿çšããŠããŸããã
ãã ããæè¿ã§ã¯ãç¹ã«AppleSiliconã®æé·ã«äŒŽããã³ãã¥ããã£ã³ã³ããã€ã¡ãŒãžãæäŸããå Žåãã¯ãã¹ãã«ãã€ã¡ãŒãžãã¯ããã«å¿ èŠã«ãªã£ãŠããŸãã ãã®çµæãBuildxã¯ç§ã®ãæ°ã«å ¥ãã®CLIãã©ã°ã€ã³ã®1ã€ã§ãããDockerãããžã§ã¯ããæåãããããã®ãã€ã«ã¹ããŒã³ãšããŠäžå¯æ¬ ã§ãããšèããã¹ãããã§ãã
ä»ã®äººãç¥ããªããããããªãDockerãæäœããããã®äžçªã®ãã³ãã¯äœã§ãã?
Dockerfiles (ãŸãã¯èªåã€ã¡ãŒãžãã«ã) ãšã¬ã€ãä»ãã®æç€ºãã1æ¥ç®ããã®ãããžã§ã¯ãã®æšæºéšåãšããŠæ€èšããŠãã ããã ããªãã®ãŠãŒã¶ãŒã¯ããªãã«æè¬ãããªãŒãã³ãœãŒã¹ã®è²¢ç®è ã®å¯èœæ§ã¯é«ãŸããŸãã
ããšãã°ãPythonããã°ã©ãã³ã°èšèªãèããŠã¿ãŸãããã GitHub/Gitlab for Python ãããžã§ã¯ããåç §ãããšããããžã§ã¯ãã«é¢é£ããäŸåé¢ä¿ãå«ã requirements.txt ãã¡ã€ã«ã衚瀺ãããã®ãäžè¬çã§ãã
ãã®å Žåãã³ã³ã·ã¥ãŒããŒã¯pipãä»ããŠäŸåé¢ä¿ãã€ã³ã¹ããŒã«ããããšãæåŸ ãããŸãã çµéšè±å¯ãªéçºè ã¯ä»®æ³ç°å¢ãå©çšã§ããŸãããçµéšã®æµ ãéçºè ã¯ãããå®è¡äžã®ã·ã¹ãã ã«çŽæ¥ã€ã³ã¹ããŒã«ã§ããŸã(ãããã£ãŠãçžäºæ±æã®å¯èœæ§ããããŸã)ã
Python 3+ã¯æãäžè¬çãªPythonãããžã§ã¯ãã®æšæºã§ãããããŒã«ã«ã«ã€ã³ã¹ããŒã«ãããŠããPythonã®ããŒãžã§ã³ãšã³ãŒãããŒã¹å ã§äœ¿çšãããããŒãžã§ã³ã®éã«ã¯åŸ®åŠãªéãããããããããŸããã ãŸããäžéšã®äŸåé¢ä¿ã«ã¯ã³ã³ãã€ã«ãå¿ èŠã§ãããç¹ã«éçºè ã³ã³ãã€ã«ããŒã«ã®ãããªãã®ãå©çšã§ããªãå Žåã¯ãäžè¬çãªäœ¿çšã«å¥ã®é害ãããããšãèæ ®ããå¿ èŠããããŸãã
ä¿¡é Œã§ããPythonã€ã¡ãŒãžãå©çšããDockerfileãæäŸããGitHub / Gitlabãšçµã¿åãããŠDockerHubãªã©ã䜿çšããŠèªååããããã«ãæžã¿ã€ã¡ãŒãžãæäŸããããšã«ãã(èªåãã«ããããªã¬ãŒãããã)ãåäººã¯æ°åã§åäžã®ã³ãã³ããšããŠãããžã§ã¯ãã«åå ããŠå®è¡ã§ããŸãã ãã®ãããªåãçµã¿ã¯ãKubernetesãCI/CD ãã€ãã©ã€ã³ãèªåãã¹ãã«ãã倧ããªåå©çšã®æ©äŒãæäŸããŸãã
ããªããè¡ã£ã/èŠãäžã§æãã¯ãŒã«ãªDockerãã¢ã¯äœã§ãã?
KubeConãã¬ã³ã·ã¢ã§è¡ããããããã¢ããŒã®åãçµã¿ã ããããšãŠãæ°ã«å ¥ã£ãã®ã§ãåœæããããã£ããã£ã㊠ãããªãäœæããŸãã!
ãããžã§ã¯ãã¯æ¬æ°ã§ãããçµå±ã®ãšããã誰ããããã®ã¿ã€ãã®ã²ãŒã ãæããŠããŸããã? ã€ãã³ãã§ã®çŽ æŽãããã·ã§ãŒããŒã¹ã§ããã ã³ã³ãã³ãã¯ãªãšãŒã¿ãŒãšããŠããŸãæè¡çãªæŠå¿µããã¢ã³ã¹ãã¬ãŒã·ã§ã³ããŠæããããã®ã²ãŒã ã®äœæã«åãçµãã§ããè ãšããŠããããå®çŸããããã®ã°ã©ãã£ãã¯èŠçŽ ã«é¢ããåªåã«ãéåžžã«æè¬ããŠããŸãã
Docker Desktop æ¡åŒµæ©èœã®åäœãèŠãŠãç§èªèº«ã® Docker Desktop æ¡åŒµæ©èœã®æ ãšãã©ããŒã¢ããã«åœ±é¿ãäžããŸããã Kubeconããæ»ã£ããšãã 6ã€ã®ããŒããšWebã¿ãŒããã«ãåããAnsibleããŒã¹ã®ã©ããå³åº§ã«æäŸããDockerãã¹ã¯ãããæ¡åŒµæ©èœãäœæããŸããã ãã®æ¡åŒµæ©èœãã©ã®ããã«äœæããããã«ã€ããŠã®é¢é£ãããªããã§ãã¯ããŠãã ãã!
ãã®å幎éã«åãçµãã ããšã§ãç¹ã«èªãã«æã£ãŠããããšã¯äœã§ãã?
YouTube ãš Udemy ã§å©çšã§ããç¡æã®Kuberneteså ¥éã³ãŒã¹ãäœæããŸããããããã¯ä¿¡ããããªãã»ã©ã®èŠèŽåæ°ãšè¯å®çãªãã£ãŒãããã¯ãåããŠããŸããããã¯ç§ã«ãšã£ãŠéåžžã«å人çãªãããžã§ã¯ãã§ãããã³ãã¥ããã£ã®ã®ãããã¯ã«çŠç¹ãåœãŠãŠããŸããã

ç§ãæåã«KubernetesãåŠã³å§ãããšããç§ãã€ã©ã€ã©ããåéããããŸããã ãã®åéã®åŠç¿ãªãœãŒã¹ã§ã¯ãå€ãã®å Žåãã³ã¢ Kubernetes ã¢ãŒããã¯ãã£ã®çè«çãªæŠèŠã瀺ãããŠããŸãããå®è·µçãªãã¢ã³ã¹ãã¬ãŒã·ã§ã³ãäžè¶³ããŠããŸãã ãã®ã³ãŒã¹ã¯ã誰ããKubernetesãããçè§£ããéèŠãªã³ã³ããŒãã³ããããã1æéã§å®è·µçã«äœ¿çšã§ããããã«ããããã«äœæããŸããã
ãã®ã³ãŒã¹ã¯ãŸããDocker Inc.ã«é¢é£ããèŠèœãšãããŠããåéã«ã€ããŠã®èŠç¹ãå ±æãããŠããŒã¯ãªæ©äŒãæäŸããŠãããŸããã ããšãã°ãDocker ã Cloud Native ã«å¯ŸããŠè¡ã£ãç©æ¥µçãªåãçµã¿ã«ã€ããŠããããã Cloud Native Computing Foundation ãš Open Container Initiative ãžã® containerd ãš runC ã®è²¢ç®ã«ã€ããŠåãäžããŸãã
KubernetesãDockerãã¯ã©ãŠããã€ãã£ããã³ã³ãã³ããã³ãã¥ããã£ãªã©ãç§ã®ãæ°ã«å ¥ãã®æ ç±ã®å€ããäžåºŠã«ã«ããŒãããããžã§ã¯ãã«åãçµãããšãã§ããŠå æ ã§ããã
ä»å¹Žã®Dockerã®æå€§ã®çºè¡šã¯äœã ãšæããŸãã?
ããã«ã€ããŠã¯ãã§ã«äžã§è¿°ã¹ãŸããããç§ã«ãšã£ãŠã¯Dockerãã¹ã¯ãããæ¡åŒµæ©èœã§ãã Docker Desktop (çŸåšã¯ WindowsãMacãLinux ã®ãã€ãã£ã) ãšäœµããŠèãããšããã¹ãŠã®äž»èŠãª OS ãã©ãããã©ãŒã ã§äžè²«ããéçºãªãœãŒã¹ãæäŸã§ããäžè²«ãã Docker ãã¹ã¯ãããç°å¢ãšæ¡åŒµæ©èœãã©ãããã©ãŒã ããããŸãã
Dockerã³ãã¥ããã£ã«é¢ããæ¥å¹Žã®å人çãªç®æšã¯äœã§ãã?
ç§ã®ç®çã¯ã³ãã¥ããã£ã«çŠç¹ãåœãŠãŠãããKubernetesãšçµã¿åãããŠDockerãéç¹åããã³ã³ãã³ãã«ãã§ã«åãçµãã§ããŸã(Docker Desktop Kubernetesã®ã€ã³ã¹ããŒã«ã§ããã«å€ãã®ããšãè¡ãæ©äŒããããããããŸã)ã Docker Slackã¢ããŠã³ã¹ãã£ã³ãã«ã®ã¿ã°ã©ã€ã³ãèšãããã«...Docker, Docker, Docker!!
DockerCon 2022ã§æ°ã«å ¥ã£ãããšã¯äœã§ãã?
ã³ãã¥ããã£ã è²ã ãªããŒã¯ããã£ã¹ã«ãã·ã§ã³ãèŠãªããããã£ããã«ãŒã ã§æŽ»èºããŸããã
åå è ã®ç±æ°ã¯é«ããåœæãäºãã«ãããã¹ããããŠãã人ãã¡ãšçŽ æŽãããã€ãªãããã§ããŸããã
éåžžã«äºæ³å€ã®ç¬éãããã€ããããŸããã ããšãã°ãJustin Cormack ãš Ajeet Singh Raina ã¯ãè峿·±ããã³ããŒãžãã€ã¯ã䜿çšããŠããã£ããã«ãŒã ãã€ãã³ãåŸã®ãã£ã¹ã«ãã·ã§ã³ãéå§ããŸããã
é ãæªæ¥ãèŠæ®ããŠãããªããæãè奮ããå€ãã®å¯èœæ§ãç§ããŠãããšæããã¯ãããžãŒã¯äœã§ãã?
ç§ã®å¿ãå¹ãé£ã°ããæè¡ã¯ãããã¹ãæ å ±ã«åºã¥ããŠç»åãèªåçã«äœæã§ããAIãœãªã¥ãŒã·ã§ã³ã§ããDall-E 2ã§ãã ãããèããããšããªãå Žåã¯ã ãã®ãããªããã§ãã¯ããå¿ èŠããããŸãã
çŸæç¹ã§ã¯ã Dall-E Miniã詊ãããšã¯å¯èœã§ãã ããã¯Dall-E 2ã»ã©åŒ·åã§ã¯ãããŸãããã䜿çšããã®ã¯æ¥œããå ŽåããããŸãã
ããšãã°ãããã¯ãDockerãã®å ¥åã䜿çšããŠAIã«ãã£ãŠäœæãããäžæã®ç»åã§ãã ãã®æè¡ãæ¢åã®ã€ã¡ãŒãžãåå©çšããŠãããããããäœãããã«ãDockerãã®æŠå¿µãåŠãã ããšãèãããšãããã¯æ¬åœã«æ³šç®ã«å€ããŸãã

æ¥éãªç«ã®è³ªå...
ãã³ãããã¯ã®éã«ã©ã®ãããªæ°ããã¹ãã«ãç¿åŸããŸããã?
ã³ãŒããŒã¯å人çãªæ ç±ã§ãããç§ãäŸåããæ¥œããã§ããçæã§ã! ãšã¢ããã¬ã¹ã¯ãå®äŸ¡ã§ã·ã³ãã«ã§å¹æçãªããã€ã¹ã§ãããå€ãã®æ©äŒããããŸãã ç§ã¯çŽ æŽããããšã¢ããã¬ã¹ã³ãŒããŒãäœãæ¹æ³ãæ¢æ±ããŸããããããŠç§ã¯ãããéä»ãã«ãããšæããŸã! èå³ã®ããæ¹ã¯ããšã¢ããã¬ã¹ããªã¹ã¿ãã£ã³ããªã³ã·ããã®ãã£ãŒããã芧ãã ããã
ç«ãç¬ã?
ç«ã ç§ã«ã¯2ã€ããã1ã€ã¯ãŠã£ã¹ããŒãããã£ã¯ãããã1ã€ã¯ãããŒã¬ã³ã¹ããŒã·ã³ãšããååã§ãã ãŠã£ã¹ããŒã¯ããªãã£ãã·ã¥ãã«ãŒã§ããããŒã¯ããªãã£ãã·ã¥ãã«ãŒãšãã¯ã€ãã§ãã åœæãç§ãã¡ã¯ç«ã1å¹ã ã飌ãã€ããã§ããããé£å ã®å¥³æ§ãå²åŒäŸ¡æ Œã§ãããŒãæäŸããŠãããŠãæµæã§ããŸããã§ããã


é£å ã®å¥³æ§ã¯ããªãã£ãã·ã¥ãã«ãŒã¹ãšããªãã£ãã·ã¥ãã¯ã€ãã®ããªãŒããŒã§ããããã«ãŒã¹ã®ãç¶ããã¯ãã¯ã€ãã®ãæ¯ãããšäžç·ã«å¿ã³èŸŒãã§ããŸãããæ²ããããªãããªãã¯äœãèµ·ãã£ãã®ãæšæž¬ããããšãã§ããŸãã ããã¯Floã«åœŒå¥³ã®éåžžã«ãŠããŒã¯ãªãŸã ãã®è²ãäžããŸãã
äºäººã¯äžŠå€ãããã£ã©ã¯ã¿ãŒã§ãã ãŠã£ã¹ããŒã¯2人ã®è åã§ãããã¢ã«ãã¡ç«ã§ãããšèŠãªãããŸããã圌ã¯çµ¶å¯Ÿçãªãœããã§ããã誰ããåœŒãæŸãããšãæ°ã«ããŸããã
äžæ¹ããããŒãäœæ Œã«æ¬ ããŠãããã®ã¯ãé è³ãšææ·æ§ã§è£ããŸãã
ç§ã®åäŸãã¡ã®ãªãªãŒ(11)ãšã¢ã³ãŠã§ã³(4)ã®äž¡æ¹ããããŒãä¿æããããšãã§ããäœãèµ·ãããŸããã 圌ãã¯çäžç·ã«æé·ããŸããããããŠããã¯ãŸãã§åœŒå¥³ã圌ããåäŸã§ããããšãç¥ã£ãŠãããã®ããã§ãã ãããã倧人ãšããŠåœŒå¥³ãè¿ãã«è¡ãããšããŠããç¡å·ã§éããããšã¯ã§ããŸããã ãããŒã¯ãŸãããã£ãªãŒãã¹ã±ãããèŠããªããŠãããã€åœŒå¥³ãç£å»ã«é£ããŠè¡ãã€ããããç¥ããã®äžæè°ãªèœåãæã£ãŠããããã§ã!
圌ãã®ç¹åŸŽã«ãããããããç§ãã¡ã¯ä»ã®æ¹æ³ã§æ¯ç®ã§èŠãããå®¶æãæã£ãŠããŸããã
å¡©èŸããé žã£ã±ãããŸãã¯çã?
çãïŒ
ããŒããå±±ã?
ããŒã(ã¹ãã¢ãã¹å³¶ã«ããããã®ãæ°ã«å ¥ãããããŸã)ãé¡ãããŸã!