Vagrant - uniqcle/Yii2 GitHub Wiki
https://puphpet.com/
# MACHINES
# Internal Identifier
yii # ID машины, с которой будем работать в консоле с помощью команд Vagrant. Лучше кратко называть
# Hostname
yii # Имя машины, отображаемое в VirtualBox
# IP Address
192.168.56.101 # IP адрес Виртуалки. Обычно для VirtualBox этот IP
# Memory
2048 # Добавляем память в мб
Forwarded ports
Оставляем по-умолчанию
Shared Folders
Folder Source Folder Target
c:/yii/www
/var/www
System Packages
php7.2-mbstring
php-zip
php-imagick
php7.2-gd
php7.0-intl
php7.0-xsl
php7.2-xml
Users & Groups
Оставляем по-умолч.
Locale
Оставляем по-умолч.
Firewall
Оставляем по-умолч.
Resolv
Оставляем по-умолч.
Позволяет указывать DNS-сервера для локально. машины. Но бывает из-за нее проблемы, поэтому лучше убрать
Cron Jobs
Оставляем по-умолч.
Custom Files
Оставляем по-умолч.
Install Nginx
Снимаем галочку
Install Apache
Для Frontend
# VIRTUAL HOSTS
# VHOST1
# Server Name (для Fronted)
yii2frontend.com
# Server Aliases
можно не ставить
# Document Root (для Frontend)
/var/www/project/frontend/web # такой путь обусловлен структурой самого фреймворка
# VIRTUAL HOST DIRECTORY/LOCATION/FILES DIRECTIVES
# PHP_HTML
# Path
/var/www/project/frontend/web
для Backend
# VIRTUAL HOSTS
# VHOST2
# Server Name
yii2backend.com
# Document Root (для Backend)
/var/www/project/backend/web
# VIRTUAL HOST DIRECTORY/LOCATION/FILES DIRECTIVES
PHP_HTML_*
ADD -> Basic PHP
# Path
/var/www/project/backend/web
# Directory Index
index.php
# PHP_PHP_*
# Path
\.php$ # Для поддержки php-скриптов. Связываем Apache с fpm
# остальное по-умолч.
Let's Encrypt
Оставляем по-умолч.
Спец. программа, чтобы делать защещенные соединения для сайтов
Install PHP
Composer можно поставить
Остальное все по-умолч.
Ruby
Оставляем по-умолч.
Это требуется установщику
Python
Оставляем по-умолч.
NODE.JS и Install MariaDB
Оставляем по-умолч.
Install MySQL
# Version
5.7 # Версия MySql
# Root Password
root
# USERS
# USER1
# Username
yii2user
# Password
123456
# DATABASES
# DB Name
yii2advanced
# GRANTS
# User
yii2user
# Database
*.*
# Privileges
ALL
Install PostgreSQL, MongoDB, Redis, SQLite, MailHog, Beanstalkd, RabbitMQ, Elastic Search
Оставляем по-умолч.
Далее скачиваем архив puphpet.zip
с Vagrantfile
Развертываем окружение с помощью Vagrantfile
-
Распаковываем архив и папку
0UGhr0
кладем рядом с project -
Проверить пользователя и группу на www-data в файле 0UGhr0/puphpet/config.yaml (где 0UGhr0 - папка из архива конфигуратора):
...
synced_folder:
folder1:
owner: www-data
group: www-data
...
-
Переходим в папку
0UGhr0
-
Поднимаем виртуальную машину
vagrant up
Команды Vagrant
vagrant global-status # Просмотр список запущенных виртуальных машин
vagrant halt [id] # Остановка машины
vagrant up [id] # Запуск машины
vagrant ssh # Зайти на сервер
vagrant destroy [id] # удалить виртуалку
В Windows 10 бывает при запуске
vagrant up
зависает. Необходимо Панель управления -> Удаление программы -> Включение и отключение компонентов Windows -> Hyper V (отключаем)