10æXNUMXæ¥ããã¹ã©ãŒã ã§ã¹ã¿ãŒã
ãã®èšäºã§ã¯ãDocker ã®æŽå²ãšãã®äž»ãªæœè±¡åã§ãã ImageãCliãDockerfile ã«ã€ããŠèª¬æããŸãã ãã®è¬çŸ©ã¯åå¿è ã察象ãšããŠãããããçµéšè±å¯ãªãŠãŒã¶ãŒã«ã¯èå³ãæãããªãå¯èœæ§ããããŸãã è¡æ¶²ãè«åããŸãã¯æ·±ã氎没ã¯ãããŸããã ãŸãã«åºæ¬ã
ããã«ãŒãšã¯
Wikipedia ãã Docker ã®å®çŸ©ãèŠãŠã¿ãŸãããã
Docker ã¯ãã³ã³ããåãããç°å¢ã§ã®ã¢ããªã±ãŒã·ã§ã³ã®ãããã€ãšç®¡çãèªååãããœãããŠã§ã¢ã§ãã
ãã®å®çŸ©ããã¯äœãæããã§ã¯ãããŸããã ç¹ã«ãã³ã³ããåããµããŒãããç°å¢ã§ããäœãæå³ããã®ããäžæçã§ãã ãããç¥ãããã«ãæéãé¡ã£ãŠã¿ãŸãããã ç§ãåŸæ¥ãã¢ããªã·ãã¯æ代ããšåŒãã§ããæ代ããå§ããŸãããã
ã¢ããªã·ãã¯æ代
ã¢ããªã·ãã¯æ代ãšã¯ 2000 幎代åé ã§ãåœæã¯ãã¹ãŠã®ã¢ããªã±ãŒã·ã§ã³ãã¢ããªã·ãã¯ã§ãããå€ãã®äŸåé¢ä¿ããããŸããã éçºã«ã¯é·ãæéãããããŸããã åæã«ããµãŒããŒã®æ°ã¯ããã»ã©å€ãã¯ãããŸããã§ããããç§ãã¡ã¯ãã¹ãŠã®ãµãŒããŒã®ååãç¥ã£ãŠãããããããç£èŠããŠããŸããã ãããªé¢çœãæ¯èŒããããŸãã
ãããã¯å®¶çã§ãã ã¢ããªã·ãã¯æ代ãç§ãã¡ã¯ãµãŒããŒããããã®ããã«æ±ããæ¯ã¥ããããããŠå€§åã«ãã塵ãå¹ãé£ã°ããŸããã ãŸãããªãœãŒã¹ç®¡çãæ¹åããããã«ãä»®æ³åã䜿çšããŸããããµãŒããŒãè€æ°ã®ä»®æ³ãã·ã³ã«åå²ããããã«ãã£ãŠç°å¢ã®åé¢ã確ä¿ããŸããã
ãã€ããŒãã€ã¶ãŒããŒã¹ã®ä»®æ³åã·ã¹ãã
VMwareãVirtualBoxãHyper-VãQemu KVM ãªã©ã®ä»®æ³åã·ã¹ãã ã«ã€ããŠã¯ã誰ããèããããšãããã§ãããããããã¯ã¢ããªã±ãŒã·ã§ã³ã®åé¢ãšãªãœãŒã¹ç®¡çãæäŸããŸãããæ¬ ç¹ããããŸãã ä»®æ³åãè¡ãã«ã¯ããã€ããŒãã€ã¶ãŒãå¿ èŠã§ãã ãããŠããã€ããŒãã€ã¶ãŒã¯ãªãœãŒã¹ã®ãªãŒããŒãããã§ãã ãããŠãä»®æ³ãã·ã³èªäœã¯éåžžããªãã¬ãŒãã£ã³ã° ã·ã¹ãã ãNginxãApacheããããŠå Žåã«ãã£ãŠã¯ MySQL ãå«ã巚倧ãªã€ã¡ãŒãžã§ãã ç»åã倧ããä»®æ³ãã·ã³ã®æäœãäžäŸ¿ã§ãã ãã®çµæãä»®æ³ãã·ã³ã®æäœãé ããªãå¯èœæ§ããããŸãã ãã®åé¡ã解決ããããã«ãä»®æ³åã·ã¹ãã ãã«ãŒãã« ã¬ãã«ã§äœæãããŸããã
ã«ãŒãã«ã¬ãã«ã®ä»®æ³åã·ã¹ãã
ã«ãŒãã« ã¬ãã«ã®ä»®æ³åã¯ãOpenVZãSystemd-nspawnãLXC ã·ã¹ãã ã§ãµããŒããããŠããŸãã ãã®ãããªä»®æ³åã®é¡èãªäŸã¯ãLXC (Linux Containers) ã§ãã
LXC ã¯ãåäžããŒãäžã§ Linux ãªãã¬ãŒãã£ã³ã° ã·ã¹ãã ã®è€æ°ã®åé¢ãããã€ã³ã¹ã¿ã³ã¹ãå®è¡ããããã®ãªãã¬ãŒãã£ã³ã° ã·ã¹ãã ã¬ãã«ã®ä»®æ³åã·ã¹ãã ã§ãã LXC ã¯ä»®æ³ãã·ã³ã䜿çšããŸããããç¬èªã®ããã»ã¹ ã¹ããŒã¹ãšãããã¯ãŒã¯ ã¹ã¿ãã¯ãåããä»®æ³ç°å¢ãäœæããŸãã
åºæ¬çã« LXC ã¯ã³ã³ãããäœæããŸãã ä»®æ³ãã·ã³ãšã³ã³ããã®éãã¯äœã§ãã?
ã³ã³ãããŒã¯ããã»ã¹ã®åé¢ã«ã¯é©ããŠããŸãããã«ãŒãã« ã¬ãã«ã§ä»®æ³åã·ã¹ãã ã«è匱æ§ãèŠã€ãããã³ã³ãããŒãããã¹ãã«éããããšãã§ããŸãã ãããã£ãŠãäœããåé¢ããå¿ èŠãããå Žåã¯ãä»®æ³ãã·ã³ã䜿çšããããšããå§ãããŸãã
ä»®æ³åãšã³ã³ããåã®éãã¯ãå³ã§ç¢ºèªã§ããŸãã
ããŒããŠã§ã¢ ãã€ããŒãã€ã¶ãŒãOS äžã®ãã€ããŒãã€ã¶ãŒãããã³ã³ã³ãããŒããããŸãã
æ¬åœã«äœããåé¢ãããå Žåã«ã¯ãããŒããŠã§ã¢ ãã€ããŒãã€ã¶ãŒãæé©ã§ãã ã¡ã¢ãªããŒãžãšããã»ããµã®ã¬ãã«ã§åé¢ã§ããããã§ãã
ããã°ã©ã ãšããŠã¯ãã€ããŒãã€ã¶ãŒããããã³ã³ãããŒãããããããã«ã€ããŠã¯ããã«è©³ãã説æããŸãã ã³ã³ããåã·ã¹ãã ã«ã¯ãã€ããŒãã€ã¶ãŒã¯ãããŸããããã³ã³ãããäœæããã³ç®¡çããã³ã³ãã ãšã³ãžã³ããããŸãã ããã¯ãã軜éã§ãããããã³ã¢ã䜿çšããããããªãŒããŒããããå°ãªããããŸã£ãããããŸããã
ã«ãŒãã«ã¬ãã«ã§ã®ã³ã³ããåã«äœ¿çšããããã®
ä»ã®ããã»ã¹ããåé¢ãããã³ã³ãããŒãäœæã§ããäž»ãªãã¯ãããžãŒã¯ãåå空éãšã³ã³ãããŒã« ã°ã«ãŒãã§ãã
åå空é: PIDããããã¯ãŒãã³ã°ãããŠã³ããããã³ãŠãŒã¶ãŒã ä»ã«ããããŸãããç解ã容æã«ããããã«ãããã«çŠç¹ãåœãŠãŸãã
PID åå空éã¯ããã»ã¹ãå¶éããŸãã ããšãã°ãPID åå空éãäœæããããã«ããã»ã¹ãé 眮ãããšãPID 1 ã«ãªããŸããéåžžãã·ã¹ãã ã§ã¯ PID 1 㯠systemd ãŸã㯠init ã«ãªããŸãã ãããã£ãŠãããã»ã¹ãæ°ããåå空éã«é 眮ãããšãããã»ã¹ã PID 1 ãåãåããŸãã
Networking Namespace ã䜿çšãããšããããã¯ãŒã¯ãå¶é/åé¢ããå éšã«ç¬èªã®ã€ã³ã¿ãŒãã§ã€ã¹ãé 眮ã§ããŸãã ããŠã³ãã¯ãã¡ã€ã« ã·ã¹ãã ã®å¶éã§ãã ãŠãŒã¶ãŒ - ãŠãŒã¶ãŒã®å¶éã
ã³ã³ãããŒã«ã°ã«ãŒã: ã¡ã¢ãªãCPUãIOPSããããã¯ãŒã¯ - åèšçŽ 12 ã®èšå®ã ãã以å€ã®å Žåã¯ãCgroup (ãC ã°ã«ãŒãã) ãšãåŒã°ããŸãã
ã³ã³ãããŒã« ã°ã«ãŒãã¯ãã³ã³ãããŒã®ãªãœãŒã¹ã管çããŸãã ã³ã³ãããŒã« ã°ã«ãŒããéããŠãã³ã³ãããŒã¯äžå®éãè¶ ãããªãœãŒã¹ãæ¶è²»ãã¹ãã§ã¯ãªããšèšãããšãã§ããŸãã
ã³ã³ããåãå®å šã«æ©èœãããã«ã¯ãæ©èœãã³ããŒãªã³ã©ã€ããªã©ã®è¿œå ãã¯ãããžãŒã䜿çšãããŸãã
ã±ã€ãããªãã£ãšã¯ãããã»ã¹ã«äœãã§ããããäœãã§ããªãããäŒãããã®ã§ãã ã«ãŒãã« ã¬ãã«ã§ã¯ããããã¯å€ãã®ãã©ã¡ãŒã¿ãŒãå«ãåãªãããããããã§ãã ããšãã°ãroot ãŠãŒã¶ãŒã¯å®å šãªæš©éãæã¡ããã¹ãŠã®æäœãè¡ãããšãã§ããŸãã ã¿ã€ã ãµãŒããŒã¯ã·ã¹ãã æå»ãå€æŽã§ããŸããTime Capsule ã«ã¯ã¿ã€ã ãµãŒããŒã®æ©èœããããŸããããã ãã§ãã ç¹æš©ã䜿çšãããšãããã»ã¹ã®å¶éãæè»ã«æ§æã§ãããããèªåèªèº«ãä¿è·ã§ããŸãã
ã³ããŒãªã³ã©ã€ã ã·ã¹ãã ã䜿çšãããšãDocker ã€ã¡ãŒãžãæäœããããå¹ççã«äœ¿çšã§ããããã«ãªããŸãã
çŸåšãDocker ã«ã¯ Cgroups v2 ãšã®äºææ§ã®åé¡ãããããããã®èšäºã§ã¯ç¹ã« Cgroups v1 ã«çŠç¹ãåœãŠãŸãã
ããããæŽå²ã«æ»ããŸãããã
ä»®æ³åã·ã¹ãã ãã«ãŒãã« ã¬ãã«ã§ç»å Žãããšãç©æ¥µçã«äœ¿çšããå§ããŸããã ãã€ããŒãã€ã¶ãŒã®ãªãŒããŒãããã¯ãªããªããŸããããããã€ãã®åé¡ãæ®ããŸããã
- 倧ããªã€ã¡ãŒãž: ãªãã¬ãŒãã£ã³ã° ã·ã¹ãã ãã©ã€ãã©ãªãããŸããŸãªãœãããŠã§ã¢ã®æãåã OpenVZ ã«ããã·ã¥ããŸãããæçµçã«ã¯ã€ã¡ãŒãžãäŸç¶ãšããŠéåžžã«å€§ããããšãå€æããŸãã
- 梱å ãšé éã«ã¯éåžžã®æšæºããªããããäŸåé¢ä¿ã®åé¡ãæ®ããŸãã XNUMX ã€ã®ã³ãŒããåãã©ã€ãã©ãªã䜿çšããŠããããããŒãžã§ã³ãç°ãªãå ŽåããããŸãã ãããã®éã«è¡çªãèµ·ããå¯èœæ§ããããŸãã
ããããã¹ãŠã®åé¡ã解決ãã次ã®æ代ãå°æ¥ããŸããã
ã³ã³ããæ代
ã³ã³ããã®æ代ãå°æ¥ãããšãã³ã³ãããæ±ãå²åŠãå€ãããŸããã
- XNUMX ã€ã®ããã»ã¹ - XNUMX ã€ã®ã³ã³ãããŒã
- ããã»ã¹ã«å¿ èŠãªãã¹ãŠã®äŸåé¢ä¿ãã³ã³ãããŒã«é ä¿¡ããŸãã ããã«ã¯ãã¢ããªã¹ããã€ã¯ããµãŒãã¹ã«åå²ããå¿ èŠããããŸãã
- ã€ã¡ãŒãžãå°ããã»ã©ãæœåšçãªè匱æ§ãå°ãªããªããããŒã«ã¢ãŠããéããªããŸãã
- ã€ã³ã¹ã¿ã³ã¹ã¯äžæçã«ãªããŸãã
ããããšçã«ã€ããŠç§ãèšã£ãããšãèŠããŠããŸãã? 以åã¯ã€ã³ã¹ã¿ã³ã¹ã¯å®¶çã®ãããªãã®ã§ããããä»ã§ã¯çã®ãããªãã®ã«ãªããŸããã 以åã¯ãã¢ããªã¹ãã€ãŸã 100 ã€ã®ã¢ããªã±ãŒã·ã§ã³ããããŸããã ä»ã§ã¯ 100 åã®ãã€ã¯ããµãŒãã¹ã2 åã®ã³ã³ãããŒã«ãªããŸãã äžéšã®ã³ã³ãããŒã«ã¯ 3 ïœ XNUMX ã€ã®ã¬ããªã«ãå«ãŸããå ŽåããããŸãã ãã¹ãŠã®ã³ã³ãããå¶åŸ¡ããããšã¯ããã»ã©éèŠã§ã¯ãªããªããŸãã ç§ãã¡ã«ãšã£ãŠããéèŠãªããšã¯ããµãŒãã¹èªäœã®å¯çšæ§ãã€ãŸããã®ã³ã³ãããŒã®ã»ãããäœãè¡ããã§ãã ããã«ãããã¢ãã¿ãªã³ã°ã®ã¢ãããŒããå€ãããŸãã
2014 幎ãã 2015 幎ã«ãããŠãDocker ãéçããŸãããããã«ã€ããŠã¯ããããã説æããŸãã
Docker ã¯å²åŠãå€æŽããã¢ããªã±ãŒã·ã§ã³ã®ããã±ãŒãžåãæšæºåããŸããã Docker ã䜿çšãããšãã¢ããªã±ãŒã·ã§ã³ãããã±ãŒãžåãããªããžããªã«éä¿¡ããããããããŠã³ããŒãããŠãããã€ã§ããŸãã
å¿ èŠãªãã®ã¯ãã¹ãŠ Docker ã³ã³ããã«å ¥ãããããäŸåé¢ä¿ã®åé¡ã¯è§£æ±ºãããŸããã Docker ã¯åçŸæ§ãä¿èšŒããŸãã å€ãã®äººãåçŸäžèœã«ééããããšããããšæããŸãããã¹ãŠãããŸãæ©èœããæ¬çªç°å¢ã«ããã·ã¥ãããšãããã§åäœãåæ¢ããŸãã Docker ã䜿çšãããšããã®åé¡ã¯è§£æ±ºããŸãã Docker ã³ã³ãããèµ·åããŠå¿ èŠãªããšãå®è¡ãããšãé«ã確çã§å®çšŒåç°å¢ã§ãèµ·åããããã§åãããšãå®è¡ããŸãã
ãªãŒããŒãããã«ã€ããŠã®äœè«
è«žçµè²»ã«ã€ããŠã¯åžžã«è«äºãèµ·ããŸãã Docker 㯠Linux ã«ãŒãã«ãšã³ã³ããåã«å¿ èŠãªãã¹ãŠã®ããã»ã¹ã䜿çšãããããè¿œå ã®è² è·ã¯ããããªããšèãã人ãããŸãã ãDocker ããªãŒããŒãããã ãšãããªããLinux ã«ãŒãã«ããªãŒããŒãããã ããšãããããªãã®ã§ãã
äžæ¹ã§ãããã«è©³ããèŠãŠã¿ããšãDocker ã«ã¯ããªãŒããŒããããšèšãããã®ãå®éã«ããã€ããããŸãã
1 ã€ç®ã¯ PID åå空éã§ãã ããã»ã¹ãåå空éã«é 眮ãããšããã®ããã»ã¹ã«ã¯ PID 1 ãå²ãåœãŠãããŸããåæã«ããã®ããã»ã¹ã«ã¯ãã³ã³ããã®å€ã®ãã¹ãåå空éã«ããå¥ã® PID ãå²ãåœãŠãããŸãã ããšãã°ãã³ã³ãã㧠Nginx ãèµ·åãããšãPID 12623 (ãã¹ã¿ãŒ ããã»ã¹) ã«ãªããŸããã ãããŠããã¹ãäžã§ã¯ PID XNUMX ã«ãªããŸãããããŠããããã©ã®çšåºŠã®ãªãŒããŒãããã§ããããèšãã®ã¯å°é£ã§ãã
XNUMX ã€ç®ã¯ Cgroup ã§ãã Cgroup ãã¡ã¢ãªãã€ãŸãã³ã³ããã®ã¡ã¢ãªãå¶éããæ©èœå¥ã«èŠãŠã¿ãŸãããã ãããæå¹ã«ãããšãã«ãŠã³ã¿ãšã¡ã¢ãª ã¢ã«ãŠã³ãã£ã³ã°ãã¢ã¯ãã£ãã«ãªããŸããã«ãŒãã«ã¯ããã®ã³ã³ããã«å²ãåœãŠãããããŒãžæ°ãšããŸã 空ãããŒãžæ°ãææ¡ããå¿ èŠããããŸãã ããã¯ãªãŒããŒãããã§ããå¯èœæ§ããããŸããããããããã©ãŒãã³ã¹ã«ã©ã®ãããªåœ±é¿ãäžãããã«ã€ããŠã®æ£ç¢ºãªç 究ã¯èŠãããšããããŸããã ãããŠãç§èªèº«ããDocker ã§å®è¡ãããŠããã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ãçªç¶æ¥æ¿ã«äœäžããããšã«æ°ã¥ããŸããã§ããã
ãããŠãããã©ãŒãã³ã¹ã«ã€ããŠãã XNUMX ã€æ³šæããŠãã ããã äžéšã®ã«ãŒãã« ãã©ã¡ãŒã¿ãŒã¯ãã¹ãããã³ã³ãããŒã«æž¡ãããŸãã ç¹ã«ãããã€ãã®ãããã¯ãŒã¯ãã©ã¡ãŒã¿ã ãããã£ãŠãDocker ã§é«æ§èœãªãã®ãããšãã°ãããã¯ãŒã¯ãç©æ¥µçã«äœ¿çšãããã®ãå®è¡ãããå Žåã¯ãå°ãªããšããããã®ãã©ã¡ãŒã¿ãŒã調æŽããå¿ èŠããããŸãã ããšãã°ãnf_conntrack ãªã©ã§ãã
Docker ã®æŠå¿µã«ã€ããŠ
Docker ã¯ããã€ãã®ã³ã³ããŒãã³ãã§æ§æãããŠããŸãã
- Docker ããŒã¢ã³ã¯åãã³ã³ãã ãšã³ãžã³ã§ãã ã³ã³ãããèµ·åããŸãã
- Docker CII ã¯ãDocker 管çãŠãŒãã£ãªãã£ã§ãã
- Dockerfile - ã€ã¡ãŒãžãæ§ç¯ããæ¹æ³ã«ã€ããŠã®èª¬æã
- ã€ã¡ãŒãž â ã³ã³ãããŒã®ããŒã«ã¢ãŠãå ã®ã€ã¡ãŒãžã
- 容åšã
- Docker ã¬ãžã¹ããªã¯ã€ã¡ãŒãž ãªããžããªã§ãã
æŠç¥çã«ã¯æ¬¡ã®ããã«ãªããŸãã
Docker ããŒã¢ã³ã¯ Docker_host äžã§å®è¡ãããã³ã³ãããŒãèµ·åããŸãã ã³ãã³ããéä¿¡ããã¯ã©ã€ã¢ã³ãããããŸã: ã€ã¡ãŒãžã®ãã«ããã€ã¡ãŒãžã®ããŠã³ããŒããã³ã³ãããŒã®èµ·åã Docker ããŒã¢ã³ã¯ã¬ãžã¹ããªã«ã¢ã¯ã»ã¹ããŠããããå®è¡ããŸãã Docker ã¯ã©ã€ã¢ã³ãã¯ãããŒã«ã«ã« (Unix ãœã±ããã«) ã¢ã¯ã»ã¹ããããšãããªã¢ãŒã ãã¹ããã TCP çµç±ã§ã¢ã¯ã»ã¹ããããšãã§ããŸãã
åã³ã³ããŒãã³ããèŠãŠã¿ãŸãããã
ããã«ãŒããŒã¢ã³ - ããã¯ãµãŒããŒéšåã§ããããã¹ã ãã·ã³äžã§åäœããŸããã€ã¡ãŒãžãããŠã³ããŒãããŠããããã³ã³ãããèµ·åããã³ã³ããéã«ãããã¯ãŒã¯ãäœæãããã°ãåéããŸãã ç§ãã¡ããã€ã¡ãŒãžãäœãããšèšããšããæªéããããè¡ã£ãŠããŸãã
Docker CLI â Docker ã¯ã©ã€ã¢ã³ãéšåãããŒã¢ã³ãæäœããããã®ã³ã³ãœãŒã« ãŠãŒãã£ãªãã£ã ç¹°ãè¿ããŸãããããŒã«ã«ã ãã§ãªããããã¯ãŒã¯çµç±ã§ãæ©èœããŸãã
åºæ¬çãªã³ãã³ã:
docker ps - Docker ãã¹ãäžã§çŸåšå®è¡ãããŠããã³ã³ãããŒã衚瀺ããŸãã
docker ã€ã¡ãŒãž - ããŒã«ã«ã«ããŠã³ããŒããããã€ã¡ãŒãžã衚瀺ããŸãã
docker search <> - ã¬ãžã¹ããªå
ã®ã€ã¡ãŒãžãæ€çŽ¢ããŸãã
docker pull <> - ã¬ãžã¹ããªããã€ã¡ãŒãžããã·ã³ã«ããŠã³ããŒãããŸãã
ããã«ãŒãã«ã < > - ç»åãåéããŸãã
docker run <> - ã³ã³ãããèµ·åããŸãã
docker rm <> - ã³ã³ãããåé€ããŸãã
docker ãã° <> - ã³ã³ãã㌠ãã°
docker start/stop/restart <> - ã³ã³ãããŒã®æäœ
ãããã®ã³ãã³ãããã¹ã¿ãŒããèªä¿¡ãæã£ãŠäœ¿çšã§ããå Žåã¯ããŠãŒã¶ãŒ ã¬ãã«ã§ Docker ã® 70% ã«ç¿çããŠãããšèããŠãã ããã
ããã«ãŒãã¡ã€ã« - ã€ã¡ãŒãžãäœæããããã®æé ã ã»ãŒãã¹ãŠã®åœä»€ã³ãã³ãã¯æ°ããã¬ã€ã€ãŒã§ãã äŸãèŠãŠã¿ãŸãããã
Dockerfile ã¯æ¬¡ã®ããã«ãªããŸããå·ŠåŽã«ã³ãã³ããå³åŽã«åŒæ°ããããŸãã ããã«ãã (ãããŠé垞㯠Dockerfile ã«èšè¿°ããã) åã³ãã³ãã¯ãImage ã«æ°ããã¬ã€ã€ãŒãäœæããŸãã
å·ŠåŽãèŠãŠã倧äœäœãèµ·ãã£ãŠããããåãããŸãã ããã©ã«ããŒãäœæããŠãã ããããšèšããŸããããã㯠XNUMX ã€ã®ã¬ã€ã€ãŒã§ãã ããã©ã«ããŒãæ©èœããããã¯å¥ã®ã¬ã€ã€ãŒã§ããã以äžåæ§ã§ãã ã¬ã€ã€ãŒã±ãŒãã¯ç掻ã楜ã«ããŠãããŸãã å¥ã® Dockerfile ãäœæããæåŸã®è¡ã§äœããå€æŽããå Žå (ãpythonããmain.pyã以å€ã®ãã®ãå®è¡ããããå¥ã®ãã¡ã€ã«ããäŸåé¢ä¿ãã€ã³ã¹ããŒã«ãããããå Žå)ã以åã®ã¬ã€ã€ãŒããã£ãã·ã¥ãšããŠåå©çšãããŸãã
ç»å - ããã¯ã³ã³ãã ããã±ãŒãžã³ã°ã§ããã³ã³ããã¯ã€ã¡ãŒãžããèµ·åãããŸãã ããã±ãŒãž ãããŒãžã£ãŒã®èŠ³ç¹ãã Docker ãèŠãå Žå (deb ãŸã㯠rpm ããã±ãŒãžãæäœããŠãããã®ããã«)ãimage ã¯æ¬è³ªçã« rpm ããã±ãŒãžã§ãã yum install ã䜿çšãããšãã¢ããªã±ãŒã·ã§ã³ã®ã€ã³ã¹ããŒã«ãåé€ããªããžããªå ã§ã®æ€çŽ¢ãããŠã³ããŒããè¡ãããšãã§ããŸãã ããã§ãã»ãŒåãã§ããã³ã³ããã¯ã€ã¡ãŒãžããèµ·åãããDocker ã¬ãžã¹ã㪠(ãªããžããªå ã® yum ãšåæ§) ã«ä¿åãããåã€ã¡ãŒãžã«ã¯ SHA-256 ããã·ã¥ãååãã¿ã°ãä»ããããŸãã
ã€ã¡ãŒãžã¯ Dockerfile ã®æ瀺ã«åŸã£ãŠæ§ç¯ãããŸãã Dockerfile ããã®ååœä»€ã«ãããæ°ããã¬ã€ã€ãŒãäœæãããŸãã ã¬ã€ã€ãŒã¯åå©çšã§ããŸãã
Docker ã¬ãžã¹ã㪠Docker ã€ã¡ãŒãž ãªããžããªã§ãã OS ãšåæ§ã«ãDocker ã«ã¯ãããªãã¯æšæºã¬ãžã¹ã㪠dockerhub ããããŸãã ãã ããç¬èªã®ãªããžããªãç¬èªã® Docker ã¬ãžã¹ããªãæ§ç¯ããããšã¯ã§ããŸãã
ã³ã³ãã - ç»åããçºå°ããããã®ã Dockerfile ã®æ瀺ã«åŸã£ãŠã€ã¡ãŒãžãæ§ç¯ãããã®ã€ã¡ãŒãžããèµ·åããŸãã ãã®ã³ã³ããã¯ä»ã®ã³ã³ããããåé¢ãããŠãããã¢ããªã±ãŒã·ã§ã³ãæ©èœããããã«å¿ èŠãªãã®ããã¹ãŠå«ãŸããŠããå¿ èŠããããŸãã ãã®å ŽåãXNUMX ã€ã®ã³ã³ãããŒã« XNUMX ã€ã®ããã»ã¹ãå«ãŸããŸãã ããŸã㟠XNUMX ã€ã®ããã»ã¹ãå®è¡ããå¿ èŠããããŸããããã㯠Docker ã®ã€ããªãã®ãŒã«å€å°åããŠããŸãã
ã1 ã€ã®ã³ã³ãããŒãXNUMX ã€ã®ããã»ã¹ãèŠä»¶ã¯ãPID åå空éã«é¢é£ããŠããŸãã PID XNUMX ã®ããã»ã¹ãåå空éã§éå§ããããšãã«ããã®ããã»ã¹ãçªç¶åæ¢ãããšãã³ã³ããå šäœãåæ¢ããŸãã ãã㧠XNUMX ã€ã®ããã»ã¹ãå®è¡ãããŠãããXNUMX ã€ã¯çããŠããããã XNUMX ã€ã¯æ»ãã§ããå Žåã§ããã³ã³ãããŒã¯åŒãç¶ãçãç¶ããŸãã ãã ããããã¯ãã¹ã ãã©ã¯ãã£ã¹ã®åé¡ã§ãããä»ã®è³æã§èª¬æããŸãã
ã³ãŒã¹ã®ç¹åŸŽãšå®å
šãªããã°ã©ã ãããã«è©³ãã調ã¹ãã«ã¯ã次ã®ãªã³ã¯ãã¯ãªãã¯ããŠãã ããã
èè : Marcel Ibraevãèªå® Kubernetes 管çè ãSouthbridge ã®çŸåœ¹ãšã³ãžãã¢ãSlurm ã³ãŒã¹ã®è¬æŒè ããã³éçºè ã
åºæïŒ habr.com