Phalcon VM is an open source Vagrant configuration which contains wide range of tools required in modern web development. Like a Swiss Army Knife, Phalcon VM allows you to easily activate and use tools required for you project.
The primary goal of this project is to provide an approachable development environment with a modern server configuration for project written with PHP7 and Phalcon 3.x framework. The project also contains compiled Zephir executable, which allows you to go even further, beyond just PHP. However it doesn't mean that you have to use only Phalcon framework, you can use it with your framework of choice.
After initial provision of your vagrant machine, you will have a fresh Ubuntu 16.04 instance with initial applications set required for very basic development. It includes Nginx server, PHP7 and its extensions (including Phalcon 3.x), Zephir, Composer (with Phalcon Dev Tools installed globally) and a few more. It will also contain a default site which will allow you to configure your environment as you want.
The default site will allow you to activate and configure Varnish cache, MySQL, PostgreSQL or MongoDb databases (along with phpMyAdmin and phpPgAdmin tools), Redis and/or Memcached caching systems (along with phpMemcachedAdmin tool), Gearman and/or RabbitMQ jobs servers, Elasticsearch and/or Sphinxsearch search engines.
Here is full list of what is and can be installed:
vagrantwill now be available as a command in your terminal, try it out.
vagrant -vto check the version. You may want to consider upgrading if a much older version is in use.
supassword may be required to properly modify the hosts file on your local machine.
You can easily create a new site in the default dashboard. To do this, go to the http://phalcon-vm/ site and click on
+ Add New Site link in the sidebar. After doing it you should see a popup which prompts you to enter new site details. So you need to enter required fields like site name, directory and domains to be able to create a new site. After entering that data you need to click on
ADD button and new site will appear in the sidebar. Finally you need to click
SAVE CHANGES button in the top right corner to save your changes on disk. After doing it your new site will be created on next provision. So the last step is to stop your current vagrant machine by using
vagrant halt command and start it again with provisioning flag by using
vagrant up --provision command.
Please, pay attention to the domains field in the site form. It allows you to enter multiple domains for your site. To do it, just separate your domains with spaces like this:
example.dev test.example.dev jobs.example.dev. In this case all these domains will be properly added to your local maching hosts file and added to the nginx setup on your vagrant machine.
The new site form is also allows you to create new site using existing repository. Just enter a link to your repository into appropriate field and select proper VCS provider and it will be used to build your site on next provision. One caveat here: please, don't forget to copy your private SSH keys to the
ssh/ folder if you want to use SSH connection to your repository.
If any vagrant command gets stuck on your Windows machine, then you need to check your PowerShell version. Major version needs to be equal or grater than 3. Use
$PSVersionTable.PSVersion to determine the engine version.
The MIT License (MIT)