Tested on Ubuntu Linux host machine. But should work on Windows host too as Ansible is being installed on VM, not on Host.
- Ubuntu 14.04 64 bit ( + bulk of system soft like
mc
,curl
, etc.) - PHP-FPM 5.5 ( + modules
intl
,gd
,xdebug
etc.) - Nginx 1.6
- MySQL 5.5
- Composer
- phpMyAdmin 4.0
- Adminer 4.1.0
- Redis 2.8 ( + PhpRedis)
- MongoDB 2.6.1 ( + php_mongo)
- PostgreSQL 9.3
- Sqlite 2.8.17
- Memcached 1.4.14 ( + php5_memcached)
- Imported Sakila DB for playing around
- And of course Yii2 Advanced Project template imported
- Local IP loop on Host machine
/etc/hosts
and Virtual hosts in Nginx already set up too !
-
Virtualbox 4.3+ + VirtualBox Extension Pack
-
Vagrant 1.6+ additional Vagrant modules (optional, but provide full automation) :
-
vagrant plugin install vagrant-hostsupdater vagrant-vbguest vagrant-cachier
You don't need to have Ansible installed on host machine. It will be installed on VM and self-provisioning will be launched. So it is possible to run everything on Windows machine.
- Clone this sources from Git
- Run
vagrant up
. - It will start VM creation and Provisioning. Could take some time 15-30 min... Drink coffee and get back for complete virtual server with Yi2 project ready for play !
Ok, now if everything went fine you can access these Urls in your browser
-
http://yii2.local/ - frontend app
-
http://admin.yii2.local/ - backend app
-
http://phpmyadmin.yii2.local/ - phpMyAdmin
-
http://adminer.yii2.local/ - Adminer (Lightweight and simple GUI manager for MySQL, PostgreSQL, SQLite, MS SQL, Oracle, SimpleDB, Elasticsearch and MongoDB)
-
Gii code generator should be called like this http://yii2.local/index.php?r=gii
Note : These local domains .local
will be available on your host machine only if hosts
file was modified correctly. It should
be done automatically by vagrant-hostsupdater
plugin. But if url http://yii2.local/
or other is not found by your browser - make sure
your hosts
file contain correct assignment of VM IP and local domains:
It should have such lines :
192.168.33.33 yii2.local
192.168.33.33 admin.yii2.local
192.168.33.33 phpmyadmin.yii2.local
192.168.33.33 adminer.yii2.local
File location. On Linux
/etc/hosts
. On Windows%SystemRoot%\system32\drivers\etc\hosts
Input there ...
Table Name : actor
Model Class : Actor
Namespace : frontend\models
Press - Preview and then Generate
Input there ...
Model Class : frontend\models\Actor
Search Model Class : frontend\models\ActorSearch
Controller Class : frontend\controllers\ActorController
Press - Preview and then Generate
- And now your Actor CRUD page is generated. You can access it here http://yii2.local/index.php?r=actor
- Continue playing with other Models, modify code (on your host machine in folder
.../try-yii2/yii2-app-advanced
) make relations between Models etc. Whatever you wish!
- In
try-yii2
folder runvagrant ssh
to access virtual dev server via SSH. You can modify and setup additionally anything you want. - Or modify Ansible provisioning YML files (if you are familiar with it) and run
vagrant provision
to update server config (WARNING! I can't guarantee that your changes will not be overwritten!)
- Sphinx
- Elastic Search
- CUBRID