Reputation: 2645
Is it possible to run Vagrant virtual machines on Ubuntu 14.04? I understand there is no GUI on SSH on this specific VPS server so I assume that is why i'm getting the following error:
The guest machine entered an invalid state while waiting for it
to boot. Valid states are 'starting, running'. The machine is in the
'poweroff' state. Please verify everything is configured
properly and try again.
If the provider you're using has a GUI that comes with it,
it is often helpful to open that and watch the machine, since the
GUI often has more helpful error messages than Vagrant can retrieve.
For example, if you're using VirtualBox, run `vagrant up` while the
VirtualBox GUI is open.
The primary issue for this error is that the provider you're using
is not properly configured. This is very rarely a Vagrant issue.
The issue is i previously used Laravel Homestead on a Windows machine VM with VirtualBox & Vagrant however; I'm currently looking to move it to a VPS. Should I ignore the virtual machine all together or should I create a box some other way? (is it possible)
Upvotes: 0
Views: 377
Reputation: 1102
As per discussion, these are the following steps to install Laravel 5 on your uBuntu.
Assuming you don't have PHP 5, these are the steps to install it :
$ sudo apt-get install python-software-properties
$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt-get update
$ sudo apt-get install -y php5.6 php5.6-mcrypt php5.6-gd
If you don't have apache2 installed:
$ apt-get install apache2 libapache2-mod-php5
If you don't have MYSQL installed:
$ apt-get install mysql-server php5.6-mysql
Laravel composer is a must to installed, an internet connection is needed:
$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
$ sudo chmod +x /usr/local/bin/composer
Install GIT:
$ apt-get install git
Enable mbstring extension for Laravel: https://stackoverflow.com/a/33736248/1589224
Install Laravel 5:
$ cd /var/www
$ git clone https://github.com/laravel/laravel.git
Navigate to Laravel code directory and use composer to install all dependencies required for Laravel framework.
$ cd /var/www/laravel
$ sudo composer install
Dependencies installation will take some time. After than set proper permissions on files.
$ chown -R www-data.www-data /var/www/laravel
$ chmod -R 755 /var/www/laravel
$ chmod -R 777 /var/www/laravel/app/storage
Now you have to set the encryption key :
Now set the 32 bit long random number encryption key, which used by the Illuminate encrypter service.
$ php artisan key:generate
Application key [uOHTNu3Au1Kt7Uloyr2Py9blU0J5XQ75] set successfully.
Now edit config/app.php configuration file and update above generated application key as followings. Also make sure cipher is set properly.
'key' => env('APP_KEY', 'uOHTNu3Au1Kt7Uloyr2Py9blU0J5XQ75'),
'cipher' => 'AES-256-CBC',
Next step is creating Apache VirtualHost
Now add a Virtual Host in your Apache configuration file to access Laravel framework from web browser. Create Apache configuration file under /etc/apache2/sites-available/
directory and add below content.
$ nano /etc/apache2/sites-available/laravel.example.com.conf
You'll either need to be a root or super user to edit it
ServerName laravel.example.com
DocumentRoot /var/www/laravel/public
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/laravel>
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
After you're done , press CTRL+X
and type in Y
and press Enter
Finally lets enable website and reload Apache service using below command.
$ a2ensite laravel.example.com
$ sudo service apache2 reload
Final step:
Accessing laravel
$ sudo echo "127.0.0.1 laravel.example.com" >> /etc/hosts
And access http://laravel.example.com
in your favorite web browser as below.
In your case, you move the websites to /var/www/
and you can already view it.
You can also CHOWN
Vagrant on Laravel directory as well.
Upvotes: 2