![ç»å](https://habrastorage.org/getpro/habr/post_images/34b/e05/056/34be050566fb5ab182359d399aa465f0.jpg)
ç§ã®æèŠã§ã¯ãWindowsäžã§å€§èŠæš¡ããã³äžèŠæš¡ã®PHPãããžã§ã¯ããéçºããããšããããšã¯å®å šã«æ£ãããšã¯èšããŸããã ãããã£ãŠãPHPã®éçºãäž»ãªä»äºã§ããå ŽåãLinuxãé·ãéããªãã®äœæ¥äžã®ãã·ã³äžã«ãããæ²ãã¿ã¯ããããŸããã ããããäœããã®çç±ã§ããªããç§ã®ããã«Windowsã«ãã ãã£ãŠããã®ã«ãWebãããžã§ã¯ãã§äœæ¥ããå¿ èŠãããå Žåããã®èšäºã¯ãLinuxãœãããŠã§ã¢ãDockerã®ã»ããã䜿çšããWebéçºã®ããã®100ïŒ æ¬æ Œçãªç°å¢ã®ã»ããã¢ãããšå®è¡ã«åœ¹ç«ã¡ãŸããããããã¹ãŠãWindowsã«çŸããçµ±åãããŠããŸãã
ãã¿ãã¬-èªãã®ãé¢åãªäººåã
ããããçš®é¡ã®Denwer / OpenServerã§ã®é·å¹Žã®ä»äºãWindowsã®ãã€ãã£ãDockerã§ã®èŠçãVirtualBoxãWindowsã§ã®Ubuntuãµãã·ã¹ãã ã®äœ¿çšãªã©ãªã©...ãããããWindowsäžã§å®ç§ãªLinuxã·ã¹ãã ãäœæããŠäœæã§ãããœãããŠã§ã¢ã®æãèŠã€ããŸããLinuxå
ã§ã®äœæ¥ã¯ãWindowsã¢ããªã±ãŒã·ã§ã³ã§ã®äœæ¥ãšåããããææ©çã§ãã
ãããŠããã§ã
以äžã¯ãã¹ãŠåãã§ãããæ¡åŒµãããŠããŸã...
ãããŠããã§ã
- ä»®æ³ãã·ã³ãäœæããããã®VMware Player 7
- Linuxãµãã·ã¹ãã ãšããŠã®Xubuntu 14.02 64ããã
- VMwareããŒã«
- VMware Unityã¢ãŒã
- ãã¹ãŠãå¿«é©ã«ããããã®ããã€ãã®ç°¡åãªèšå®ïŒä»¥äžãåç §ïŒ
以äžã¯ãã¹ãŠåãã§ãããæ¡åŒµãããŠããŸã...
TL DRã®æŽå²
ããããããã ãã³ã㌠ããã¡ãŒãããŒãžã£ãŒãFTPãããŸããã ããã§ååã§ããã ãã®åŸãsshãgitãphingãäœæ²å®¶ãã€ãªãããŸããããã¿ã³ããªã³ãšã®å°ããªãã³ã¹ã§ãããããã¹ãŠãäœããã®æ¹æ³ã§Windowsã§æ§æãããããªãã®å¹žããªäžçã§çãç¶ããããšãã§ããŸããã ããã¯éåžžã«ã·ã³ãã«ã§æ確ã§ç°¡åã§ããã
ãããªå¹žããªæéãé·ç¶ãããŸããã ããããããæç¹ã§ãæ°ãããã¯ãããžãŒããããå¿ æ»ã®ç«¶äºãå§ãŸããæ¯å¹Žå¢ããå¢ããŸããã ãã³ããŒã¯ããŒã¹ãç¶æãããPHPã®æ°ããããŒãžã§ã³ã®ãªãªãŒã¹ã«å¯Ÿå¿ããããããŸããã§ããããããžã§ã¯ãã¯æé·ããããè€éã«ãªããç®ã®åã«æè¡åç©åãå¢ããŸããã
ãã°ããã®éãæå©ã¯OpenServerã§ããã å€æ°ã®ããŒã«ãšããªãææ°ã®ãœãããŠã§ã¢ããŒãžã§ã³ãåããWindowsåãã®éåžžã«é©åãªãœãªã¥ãŒã·ã§ã³ã ããã¯äœå¹Žãæã¡ããããŸããã Windowsã«ãã ããåå¿è éçºè ãæ¯èŒçåçŽãªãããžã§ã¯ããããå ŽåããŸãã¯Webéçºãäž»ãªä»äºã§ã¯ãªãå ŽåãOpenServerãéžæããããšã¯éåžžã«è¯ããœãªã¥ãŒã·ã§ã³ã§ãã ã·ã³ãã«ã§äŸ¿å©ã§ç解ããããã
ããããåœç€Ÿã®æè¡åç©åã¯ããã®éãæé·ãç¶ããŸãã-nodeJSã匟åæ§ãç°ãªããããžã§ã¯ãçšã®PHPã®ç°ãªãããŒãžã§ã³-5.6ãã7.1ãŸã§ã ç§ãã¡ã¯PHP 7.1ã§ãããžã§ã¯ããéå§ããŸããããOpenServerã¯è¿œãã€ããŠããŸãã...ãã®èšäºãæžããŠããæç¹ã§ã¯ã7.1ã®ãµããŒãã¯æ¢ã«ãããŸãããããã§ã¯ãããŸããã§ããã ã¯ããOpenServerã®æŽæ°ã¯ããŸãå¿«é©ã§ã¯ãããŸããã ããŒãžã§ã³éã§ã®èšå®ã®ç§»æ€æ§ã¯å°é£ã§ãã
OpenServerã®ããé«åºŠãªé¡äŒŒç©ã§ããgoogleãèŠã€ããŸããã ãããããããã®ã¯èŠã€ãããŸããã§ããã ãŸããç§ã¯ãããæããããªããªã å€æ°ã®äŸåé¢ä¿ãæã€äžèŠæš¡ããã³å€§èŠæš¡ãããžã§ã¯ãã®å Žåããã®éçºãã¹ã¯è¡ãæ¢ãŸãã®ããã§ãã
Windows 10ã®Ubuntuãµãã·ã¹ãã ïŒ
Windowsã§Ubuntuãµãã·ã¹ãã ãæ§æããããšããŸããã ã€ãŸããããäœããé 眮ããŠèšå®ããããšããŸããã æ©èœããããã°ããããããããããããã¥ã¡ã³ããèŠã€ãããŸããã
Windowsäžã®DockerïŒ
ãã¹ãŠããã€ãã£ãã«æ©èœããããã«ãããŒã ããŒãžã§ã³ããããã§ãã·ã§ãã«ã«ã¢ããã°ã¬ãŒãããå¿ èŠããããŸããã èšå®ãåæ§æãèšå®ã«æ°æ¥ããããŸãã ãŸãããã©ã¹ãããã«ãŒã«æ²¡é ã ããŸãããïŒ
çå£ã«ãWindowsã®dockerã¯éåžžã«ããŸãæ©èœããäžå°èŠæš¡ã®ãããžã§ã¯ãã§ã確å®ã«æ©èœããŸãã ç§ã®å Žåããã¹ãŠãå ±æããªã¥ãŒã ã§ã®ãã¡ã€ã«ã·ã¹ãã ã®ããã©ãŒãã³ã¹ã«äŸåããŠããŸããã ãã®ãã°ã¯ä»¥åããç¥ãããŠããããã説æãããŠããŸããããšãã°ã ããã§ã¯ãWindowsããã³Macã§è¡šç€ºãããŸãã
å®éãSSDãæèŒãããã·ã³ã§ã¯ããã®ããã«èŠããŸãã-Symfony 3ã®ããã©ã«ãã®ã€ã³ã¹ããŒã«ã«å¹³å1.5ç§ããã£ãçŽåŸã«ã¹ã¿ãŒãããŒãžãéããŸããã ç§ãäœæ¥ããªããã°ãªããªãã£ããããžã§ã¯ããæãç°¡åãªããŒãžã¯çŽ10ã15ç§ééãããããã€ãã®éãããŒãžã¯ãŸã£ããéãããŸããã§ããã ãã®ãããªç¶æ³ã§åãã®ã¯éçŸå®çã ãšæããŸããã
ãã¡ã€ã«ãµãã·ã¹ãã ã®é床ã«é¢ããåé¡ã解決ããããã«èšèšãããdocker-syncãããžã§ã¯ãããããŸãã docker-syncã¯ãå ±æããªã¥ãŒã ã䜿çšãã代ããã«ãããŒã«ã«ã·ã¹ãã ãšdockerã³ã³ãããŒéã®åæ¹åãã¡ã€ã«åæãæŽçããŸãã æ®å¿µãªãããå®éã®äœæ¥ã§docker-syncãè©Šãããšã¯ãããŸããã§ããã ãã®æãŸã§ã«ãWindowsäžã®éçºç°å¢ã®æ§æã倧ãããªããããŠãä»®æ³ãã·ã³ã«åã³ãã£ã³ã¹ãäžããããšã«æ±ºããæŸèæãããããããããšã«ããããããŠããŸããã
ä»®æ³ãã·ã³
ãããã¯ããªããå§ããªããã°ãªããªãã£ãå Žæã§ãïŒãäžçŽèªè ã¯èšãã§ãããããããŠåœŒã¯ã»ãšãã©æ£ããã§ãããã
ãã¡ãããWindowsã§ã®Webéçºã®å šæŽå²ã®äžã§ãä»®æ³ãã·ã³ã®äœ¿çšã«åãæ¿ããããšãç¹°ãè¿ãè©Šã¿ãŠããŸããã ããããä»®æ³ãã·ã³ã䜿çšãããšãã«åãåã£ããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãå€§å¹ ã«äœäžããããããããã®è©Šã¿ã¯ããããæåããŸããã§ããã ãããäœã«é¢ä¿ããŠããã®ããå€åç§ã䜿çšããVirtualBoxã®æ¬ é¥ããã¶ãæ²ãã£ãæãšæ lazãªã©ã«é¢ä¿ãªãã®ã§ãããVirtualBoxã§Linuxãè©ŠããŠã¿ãŠãããã€ãã®åé¡ã«ã¶ã€ãããåãåºãããã¹ãŠãæããŸããå± å¿å°ã®è¯ãWindowsã«æ»ããŸããã
ç¹°ãè¿ãã«ãªããŸãããä»®æ³åã«ç®ãåãããšãç¡æçã®WMVare Playerã«Linuxãã€ã³ã¹ããŒã«ããããã®éåžžã«ææãªæ瀺ãèŠã€ãããŸããã
å¿«é©ãªäœæ¥ã®ããã®ä»®æ³ãã·ã³ã®æå°èŠä»¶ã®ã»ããã¯ãç§ã®åŽã§ã¯æ¬¡ã®ããã«èŠããŸããã
- ååãªé床
- Linuxã¢ããªã±ãŒã·ã§ã³ãšéåžžã®Windowsã¢ããªã±ãŒã·ã§ã³ïŒWMvareã®ãŠããã£ã¢ãŒããŸãã¯VirtualBoxã®ã·ãŒã ã¬ã¹ã¢ãŒãïŒã§åäœããŸãã
- ãã¹ããã·ã³ãšä»®æ³ãã·ã³éã®åæ¹åã®ã¯ãªããããŒãã®éåžžåäœ
- åæ¹åã®åæãåãããã¬ãŒããªãã®å ±æãã¡ã€ã«
- 以äžãå«ããã¹ãŠã®æ©èœãåãããã«Linuxç°å¢ ãã¹ããããããã«ãŒã®ä»®æ³å
- ã¿ã³ããªã³ãšèžããæŸèæã®è§£æ±ºçãæ¢ãããšã®ãªãã·ã³ãã«ãªã»ããã¢ãããéåžžã«æãŸãã
ãããŠä»ãã€ãã«æã¯ãœãããŠã§ã¢ã䜿çšãããã®æ¹æ³ã§äžç·ã«ãªããŸããïŒ
- VMware Player7.xã 7çªç®ã®ããŒãžã§ã³ãå¿ ãå¿ èŠã§ãã ãã以éã®ããŒãžã§ã³ã¯ãLinuxã®ãŠããã£ã¢ãŒãããµããŒãããŠããŸããã ããªã㡠䜿çšããããšãã§ããŸããã7koyã»ã©äŸ¿å©ã§ã¯ãããŸããã VMware Playerã¯éå¶å©ç®çã§ã®äœ¿çšã¯ç¡æã§ãã ãªã³ã¯ããå¿ èŠãªããŒãžã§ã³ãããŠã³ããŒãã§ããŸã
- ã²ã¹ãLinuxã·ã¹ãã ãšããŠãxubuntu 14.02 64ãããã䜿çšããŸãã ããããããŠã³ããŒã
- ä»®æ³ãã·ã³ãäœæããŠOSãã€ã³ã¹ããŒã«ããããVMware Toolsãã€ã³ã¹ããŒã«ããå¿ èŠããããŸãã VMwareèªäœã¯ã€ã³ã¹ããŒã«äžããã³ã€ã³ã¹ããŒã«åŸã«ãããéç¥ããŸããããã®ç¹ãèŠéããå Žåã¯ã[ãã¬ãŒã€ãŒ]ã¡ãã¥ãŒãã¯ãªãã¯ããŠã€ã³ã¹ããŒã«ãã[管ç]ãã¯ãªãã¯ããŠ[VMwareããŒã«ã®ã€ã³ã¹ããŒã«]ãéžæããŸãã
- VMware Toolsã䜿çšãããšãä»®æ³ãã·ã³ããŠããã£ã¢ãŒãã«ç§»è¡ãããã¹ã¯ãããã«ã·ã§ãŒãã«ãããäœæããããéåžžã®Windowsã¢ããªã±ãŒã·ã§ã³ãªã©ã®Linuxã¢ããªã±ãŒã·ã§ã³ã®ã¿ã¹ã¯ããŒã«ãã³çããããã§ããŸãã
äœæ¥ãããã«æ¥œããããã«ãä»®æ³ãã·ã³ã®è¿œå èšå®ãããã€ãå®è¡ããå¿ èŠããããŸãã ãããè¡ãã«ã¯ã[ãã¬ãŒã€ãŒ]ã®[管ç]ã¡ãã¥ãŒã§ã[ä»®æ³ãã·ã³ã®èšå®]ãéžæããŸãã ããã«
- ããŒããŠã§ã¢ããããã¯ãŒã¯ã¢ããã¿ã ããªããžæ¥ç¶ã¢ãŒããéžæããç©çãããã¯ãŒã¯æ¥ç¶ç¶æ ã®ã¬ããªã±ãŒããªãã·ã§ã³ããã§ãã¯ããŸãã ãã®ã¢ãŒãã§ã¯ãä»®æ³ãã·ã³ã¯ããŒã«ã«ãããã¯ãŒã¯ã«æ¥ç¶ãããã³ã³ãã¥ãŒã¿ãŒã®ããã«èŠãããã·ã³ãåèµ·åãããšã以åã®IPã¢ãã¬ã¹ãç¶æããããšããŸãã
- [ãªãã·ã§ã³]ã¿ãã§ã¯ãä»®æ³ãã·ã³ãšä»®æ³ãã·ã³éã§å ±æãã©ã«ããŒãæ§æã§ããŸãã å ±æãã©ã«ãã¯ããã©ã«ãã§ç¡å¹ã«ãªã£ãŠããŸãã
- ãŸããUnityã®ãªãã·ã§ã³ã§ã¯ã[å¢çç·ã衚瀺]ãš[ãããžã衚瀺]ããªãã«ããŠãLinuxãŠã£ã³ããŠãä»ã®ãŠã£ã³ããŠããç®ç«ããªãããã«ããããšãã§ããŸãã ããã¯ãŸã£ããå¿ èŠã§ã¯ãããŸãããã
ãã®ãããããã€ãã®éåžžã«ç°¡åãªæé ã§ãä»®æ³ãã·ã³å ã§åäœããã»ãŒå®ç§ãªLinuxéçºç°å¢ãåŸãŸããã åæã«ãä»®æ³ãã·ã³ã®ã¢ããªã±ãŒã·ã§ã³ã¯ãWindowsç°å¢ã§å®è¡ãããŠããããã«èŠããŸãã
xubuntuãèªåã§ä»®æ³ãã·ã³ã«ã€ã³ã¹ããŒã«ããLinuxäžã§Webãããžã§ã¯ããå®è¡ããããã«å¿ èŠãªãœãããŠã§ã¢ã®ã»ããã¢ããã«åãçµãããšãæ¬åœã«æãã§ããŸãã ãããè¡ãã«ã¯ãNginxãApacheãMySQLãPHPãããã³Ubuntuäžã®ãã®ä»ã®ã¢ããªã±ãŒã·ã§ã³ã®ã€ã³ã¹ããŒã«æé ã«åŸã£ãŠãã ããã ãŸãã¯ãä»ã®ããã«Dockerã䜿çšããŸãã
ã¡ãªã¿ã«ãWindowsã®docker containerã§15ç§ä»¥äžå®è¡ããã¢ããªã±ãŒã·ã§ã³ã¯ã3ç§éä»®æ³ãã·ã³ã§å®è¡ãããŸãã 5åé«éã ãã¡ããããã£ãšé«éã«ãããã®ã§ãããä»ã®ãšãããããç§ãèŠã€ããæè¯ã®éžæè¢ã§ããããšãŠã䟿å©ã§ãã
ãã®èšäºã¯ãäž»ã«ãã®ãããªã®è³æã«åºã¥ããŠããŸãã ä»®æ³ãã·ã³ãã€ã³ã¹ããŒã«ããã³æ§æããããã®è©³çŽ°ãªæé ãåç §ããå Žåã¯ã衚瀺ããããšããå§ãããŸãã èšèª-è±èªãããã¯ã»ãžã£ãã¿ãã¹ã«ãããããªã