반응형
Valet 으로 windows php 개발 환경 구성하기
Valet 으로 windows php 개발 환경 구성하기
1. Windows PHP 개발환경 구성하기 Valet 으로 정광섭(https://lesstif.com)
2. 로컬 개발 환경 구성 - PHP 웹 App 를 작성하기 위한 개개인의 작업 환경 - Apache, MySQL, PHP 기반 - Linux 의 경우 LAMP, Windows 는 MAMP
3. 로컬 개발 환경 구성 - 맥북 사용시 brew 로 간단하게 환경 구성 가능 - 모두 다 맥북 하나씩은 갖고 있죠?
4. 현실 – 개발자 PC 는 Windows 가 더 많음 - Windows 는 CLI 환경이 매우 불편 - 불편한 CLI 로 인해 자동화가 어려움 - Win10 부터 WSL (Windows Subsystem For Linux) 로 리눅스 지원이 편리해짐
5. 현실 – 너무 다양한 AMP 패키지 - EasyPHP - AMPPS - Bitnami WAMP - Iz-WAMP - MAMP - 오토셋 - … https://en.wikipedia.org/wiki/List_of_Apache%E2%80%93MySQL%E2%80%93PHP_packages
6. 현실 –모두가 PHP 개발자가 아님 - 프로젝트에 PHP 개발자만 있는 것은 아님 - 디자이너 - 퍼블리셔 - DBA - Front End 개발자 - AMP 환경 구성이 익숙하지 않을 수 있음
7. AMP 설치가 끝이 아님 - Deploy 를 위해 Web Server 설정 익혀야 함(Virtual Host등) - 운영 환경은 Apache 가 아닌 Nginx 도 많이 사용 - Apache 와 Nginx 의 설정 방법 상이
8. PHP Deploy 문제 - PHP 프레임워크나 솔루션에 따라 DocumentRoot 가 달라짐 - Wordpress – wp-config.php 가 ROOT - Laravel – public 폴더
9. PHP 로컬 웹 서버 - php -S 0.0.0.0:8000 - 가상 호스트 설정의 어려움을 피하기 위한 간단한 방법 - 포트로 구분하므로 여러 개의 프로젝트가 있을 경우 헷갈림 (하나만 하면 좋겠지만 현실은…) - 레거시 수정 필요시 개발 환경이 미리 잘 구성되어 있지 않 다면 꽤 헤맬수 있음
10. 솔루션 - Homestead - 자동화 솔루션인 Vagrant 기반 - 가상 머신(Virtual Box) 에 Ubuntu 및 개발에 필요한 모든 패키지 자동 설치 및 설정 - 사용할 수 있다면 최고의 개발 환경 구성 도구
11. Homestead 단점 - 가상 머신에 대한 기본 적인 이해 필요 - VM이라 속도가 매우 많이 느림 - 안될 경우 해결이 너무 어려움
12. 솔루션 – Docker - VM 에 비해서 매우 빠름 - LaraDock 등 Docker 기반 패키지 존재 - 하지만 Docker 를 배워야 하는 부담이 있음
13. Docker 단점 - Docker 학습 비용 발생 - 운영 배포면 모를까 docker 로 개발 환경 구성은 오버 스펙 (docker 에 익숙하다면 예외)
14. 솔루션 - Valet - VM 이 아니므로 동작이 매우 빠름 - 부팅과 동시에 nginx 를 구동 - 자동으로 Virtual Host 설정(Valet Driver) - 로컬 DNS 서버를 구성하여 브라우저에서 폴더명.dev 로 연 결
15. 솔루션 - Valet - 개발 환경 구성(parking)은 valet 에 맡기고 개발에만 집중 가능 - OS X 만 지원
16. Valet for Windows - Valet 의 Windows 포팅(https://github.com/cretueusebiu/valet-windows) - nginx 와 PHP-FPM(사실은 php-cgi) 을 Windows 의 서비스 로 자동 등록 - Acrylic DNS 로 Local DNS 서버 기능 제공
17. 사전 준비 사항 - PHP, MySQL - Composer - Windows 용 패키지 관리자인 choco 가 있다면 다음 명령 실 행 - choco install php mysql composer–y
18. 설치 - cmd.exe 실행후 아래 명령 실행 composer global require cretueusebiu/valet-windows - Valet 명령어가 설치된 경로를 PATH 에 추가 (%APPDATA%RoamingComposervendorbin) - 관리자로 cmd.exe 실행 후 아래 명령어로 발렛 설치 valet install - 에러 발생시 ~/.valet/Log 폴더의 로그 확인
19. 설정 - .dev 도메인으로 연결할 수 있도록 첫 번째 DNS 를 127.0.0.1 로 변경 - %USERPROFILE%.valetServices 의 phpfpmservice.xml 에 PHP 경로 설정 <service> <id>valet_phpfpm</id> <name>valet_phpfpm</name> <description>Valet PHP-FPM</description> <executable>d:develphpphp-7.1.8-Win32-VC14-x64php-cgi.exe</executable> <!-- <executable>php-7.0.16-Win32-VC14-x64</executable> <executable>php-5.6.30-Win32-VC11-x64</executable> --> <arguments>-b 127.0.0.1:9000</arguments> <logpath>C:Userslesstif/.valetLog</logpath> <logmode>reset</logmode> <onfailure action="restart"/> </service>
20. 사용 - park - 특정 경로내(예: c:UserslesstifSites) 의 모든 폴더 자동으 로 등록 valet park - 이제 폴더명.dev 로 연결 가능
21. 기본 도메인 변경 - 기본 도메인은 .dev 이며 변경을 원할 경우 아래 명령 실행 valet domain local - 이제 폴더명.local 로 연결 가능
22. 로컬 사이트 외부에 공개 - ngrok 를 설치했다면 현재 로컬 개발 사이트를 쉽게 공유 가 능 - 공유할 프로젝트 폴더에서 다음 명령 실행 valet share - ngrok에 표시된 URL 을 통해 외부에서 로컬 서버 연결 가능
23. 참고 자료 & QnA • https://laravel.com/docs/5.5/valet • https://github.com/cretueusebiu/valet-windows • https://www.lesstif.com/x/iQRVAg
반응형
'정보공유' 카테고리의 다른 글
A Beginner's guide to understanding Autoencoder (0) | 2018.11.14 |
---|---|
CNN 초보자가 만드는 초보자 가이드 (0) | 2018.11.14 |
처음 시작하는 라라벨 (0) | 2018.11.13 |
Sonatype nexus 로 docker registry 관리하기 (0) | 2018.11.13 |
JIRA 업무 생산성 향상 및 프로젝트 관리 (0) | 2018.11.13 |
암호화 이것만 알면 된다. (0) | 2018.11.13 |
React Native를 사용한 초간단 커뮤니티 앱 제작 (0) | 2018.11.12 |
HTML5로 만드는 데스크탑 어플리케이션 (Node-Webkit) (0) | 2018.11.12 |