Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rgranadino/mage2_vagrant
Simple Magento 2 Vagrant Box
https://github.com/rgranadino/mage2_vagrant
Last synced: 3 months ago
JSON representation
Simple Magento 2 Vagrant Box
- Host: GitHub
- URL: https://github.com/rgranadino/mage2_vagrant
- Owner: rgranadino
- Created: 2013-10-07T15:53:39.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2017-05-31T23:16:12.000Z (over 7 years ago)
- Last Synced: 2024-07-16T08:42:57.291Z (4 months ago)
- Language: PHP
- Size: 99.6 KB
- Stars: 249
- Watchers: 24
- Forks: 68
- Open Issues: 26
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Magento2 Vagrant Box
A simple way to get magento2 up and running. It consists of a Debian Wheezy box provised via Puppet. The provider is Virtual Box. It will install apache2 +fastcgi, php, php-fpm, mysql and any other necessary dependancies.The Magento 2 repository is a git submodule and can be edited/explored from the host machine. It is accessed by the guest via shared directories.
### Usage
#### Installation
1. Clone this repository: `git clone --recursive https://github.com/rgranadino/mage2_vagrant.git`
2. Navigate into the repository via `cd`
2. **IMPORTANT**: If you cloned the repository without the *--recursive* param, you need to initialize the required submodules: `git submodule update --init --recursive`
3. Start up virtual machine: `vagrant up`
4. Point a host name to 192.168.56.10 in /etc/hosts `echo '192.168.56.10 mage2.dev' >> /etc/hosts`
>NOTE: Some composer dependancies require git. Agent Forwarding over SSH is enabled in the Vagrant file but you must have `ssh-agent` running and your key added. Running `ssh-add` should add the default key to the identities list, which presumably is the same key used to access github/bitbucket. You'll may also need to create a API access token in github, instructions can be found [here](http://devdocs.magento.com/guides/v2.0/install-gde/trouble/git/tshoot_rate-limit.html):
5. Once the machine completes provisioning, SSH to the server (`vagrant ssh`).
6. Add your Magento Connect authentication credentials to the global composer auth.json:* Open or create the file `~/.composer/auth.json`
* Add the Magento Connect authentication credentials (if you don't have any, please check [here](http://devdocs.magento.com/guides/v2.0/install-gde/prereq/connect-auth.html) on how to create them):```json
{
"http-basic": {
"repo.magento.com": {
"username": "",
"password": ""
}
}
}
```
* Or you can use the composer config command: `composer.phar global config http-basic.repo.magento.com `7. Install Magento 2 by running:
* Via CLI (recommended)
* `reinstall` (Magento **without** sample data) or `reinstall -s` (Magento **with** sample data).
* Via Web Installer
* Please go to the Magento directory within the vagrant box (`cd /vagrant/data/magento2/`) and run `composer install`. Then open 'http://mage2.dev/setup' in your browser and go through the installation process.
#### Updating
1. From the host machine run `git pull && git submodule update --init && vagrant provision`.
* If there is an update to the *manifests/mage.pp* or *files/** files it is recommended to provision the guest machine. This can be done by running: `vagrant provision`. There is also a cron that runs every 15 minutes to
provision within the guest machine in the event it's not done after updating.
2. If you want to start from a clean slate run: `reinstall` from within the guest machine. This will uninstall the application and reinstall it from scratch.#### Shell Aliases / Scripts
* `m` - cd into the base magento directory: /vagrant/data/magento2
* `reinstall` - run magento shell uninstall script with the `cleanup_database` flag and run installation again, uses `http://mage2.dev` as base URL
* `reinstall -s` - install magento with sample data
* `mt` - run bulk magento test suites#### Status and Debug utilities
A status vhost on port 88 has been setup to view apache's server status, php-fpm status as well as some other utilities.* http://mage2.dev:88/server-status
* http://mage2.dev:88/fpm-status
* http://mage2.dev:88/info.php
* http://mage2.dev:88/opcache.php
* http://mage2.dev:88/webgrind### Magento Admin User
* Username: admin
* Password: password123### Database Info
* Username: root
* Password: mage2
* DB Name: mage2### SSH Info
* username: vagrant
* password: vagrantIt's also possible to use `vagrant ssh` from within the project directory
## File Structure
### Host Machine / Project directory
* manifests/mage.pp - Puppet manifest file
* files/ - contains various service configuration files
* bash_aliases - vagrant user bash aliases script
* fastcgi.conf - fastcgi configuration
* reinstall.sh - magento reinstall wrapper script
* site.conf - apache virtual host configuration
* www.conf - php-fpm pool configuration
* xdebug.ini - php xdebug configuration file
* data/magento2 - Git submodule to Magento2 Github repository: https://github.com/magento/magento2
* data/magento2-sample-data - Git submodule to Magento2 Sample Data Github repository: https://github.com/magento/magento2-sample-data### Guest Machine
* /vagrant/data/magento2 - Apache Document Root