Налаштування оточення для PHP розробників
У цій статті ми розглянемо налаштування оточення дляPHP розробниківз використаннямVagrant,Docker,Xdebug,PHPUnit, та інтеграцію зIDE PHPStorm.

Вимоги
Підготовка
Ми не загострюватимемо свою увагу на встановленні необхідних інструментів під певні ОС, інструкції по встановленню є на офіційних сайтах, посилання додаються.
Що входить до збирання?
- Nginx
- MySQL 5 (Percona)
- MongoDB 3
- Redis 3
- PHP 5.6, 7.0 CLI + FPM
- cli
- fpm
- bcmath
- gd
- gmp
- intl
- mbstring
- mcrypt
- pdo
- mysqlnd
- crypto
- geoip
- imagick
- jsonc
- memcache
- memcached
- mongodb
- ssh2
- xdebug
- soap
- xml
- opcache
- redis
- cli
- fpm
- bcmath
- gd
- gmp
- intl
- mbstring
- mcrypt
- pdo
- mysqlnd
- crypto
- geoip
- imagick
- memcache
- memcached
- mongodb
- ssh2
- xdebug
- soap
- xml
- opcache
- redis
Налаштування та конфігурування
Увага!Всі описані налаштування та файли викладені на GitHub. Якщо у вас виникають питання щодо використанняVagrantабоDocker, зверніться до офіційної документації.
Розгортання оточення трохи відрізняється на різних ОС:
- MacOSвсе пройде, як належить без додаткових дій.
- Windowsнеобхідно запустити допоміжний скриптhosts-set.cmdдля встановлення прав поточного користувача на запис дляhostsфайлу дозапускуvagrant up, також якщо у вас ім'я поточного користувача містить будь-які символиnon-ACSII, то вам доведеться змінити шлях до вашої робочої директоріїvagrant.dвикористовуючи змінну оточенняVAGRANT_HOME. Якщо у вашій ОС немає NFS, встановіть його додатково, можна якvagrantплагін vagrant-winnfsd.
- Linuxна розсуд, можна поставитиVagrantзNFSсервером або просто використовуватиdocker-composeінструкції.
Для зручності створіть папку під назвоюdockrant(Docker + Vagrant = Dockrant), далі в статті ми відштовхуватимемося від цієї папки.
Визначимося зі структурою папок:
./dockrant— наша коренева папка./dockrant/ssh— SSH ключики для гостьової ОС (в даному туторіалі використовуємо стандартні ключі vagrant)./ dockrant/share— share-папка між хост та гостьовою ОС./dockrant/share/tools— папка з нашими інструментами та bash скриптами./dockrant/vagrant /build- виконувані bash скрипти при піднятті гостьової ОС
Тепер нам необхідно за структурою папок, описаних вище, покласти всі необхідні наші скрипти та інструкції, підемо за списком.