Налаштування оточення для PHP розробників

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

розробників
+

Вимоги

Підготовка

Ми не загострюватимемо свою увагу на встановленні необхідних інструментів під певні ОС, інструкції по встановленню є на офіційних сайтах, посилання додаються.

Що входить до збирання?

  • Nginx
  • MySQL 5 (Percona)
  • MongoDB 3
  • Redis 3
  • PHP 5.6, 7.0 CLI + FPM
PHP-extensions

  • 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 скрипти при піднятті гостьової ОС

Тепер нам необхідно за структурою папок, описаних вище, покласти всі необхідні наші скрипти та інструкції, підемо за списком.