- install a brand new Ubuntu 15.04 amd64 version
uname -a
Linux jasler 3.19.0-15-generic #15-Ubuntu SMP Thu Apr 16 23:32:37 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
Setting root password
sudo passwd root
>> root
check if apache2 is installed and port 80 is being used
ps -A | grep apache
sudo netstat -nlp | grep 80
remove if installed:
sudo killall apache2
sudo apt-get remove apache2
Install Nginx
sudo apt-get install nginx
nginx -v
nginx version: nginx/1.6.2 (Ubuntu)
Install MySQL
sudo apt-get install mysql-server
It will also install mysql-client
and other dependencies in the meantime.
Press Enter
on seeing a blank terminal to proceed.
Set the root
password root
for this time.
Install PHP5 and its extensions
sudo apt-get install php5 php5-mcrypt php5-gd php5-mysql php5-fpm php5-curl
It also installs apache2
automatically, if it conflicts with nginx
, we recommend to remove it.
Check the php
and mysql
version:
php -v
PHP 5.6.4-4ubuntu6.4 (cli) (built: Oct 28 2015 01:21:29)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies
mysql -p -uroot -v
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.6.28-0ubuntu0.15.04.1 (Ubuntu)
Install npm
sudo apt-get install npm
npm -v
1.4.21
update within it self:
sudo npm install -g npm
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
npm@3.8.3 /usr/local/lib/node_modules/npm
Or install this way:
sudo apt-get install curl
curl -sL https://deb.nodesource.com/setup > install.sh
sudo chmod +x install.sh
sudo ./install.sh
sudo apt-get install nodejs
sudo npm install -g npm
Install git
sudo apt-get install git
Creating dev folder:
change usr to your account
sudo mkdir /home/wwwroot/
sudo chown -R [usr].[usr] /home/wwwroot
Cloning repo:
cd /home/wwwroot/
git clone ssh://git@yourrepo.com:/home/git/yourrepo.git
npm install (within vpn)
sudo npm install
Install composer
cd ~
php -r "readfile('https://getcomposer.org/installer');" > composer-setup.php
php composer-setup.php
sudo mv composer.phar /etc/php5/composer.phar
sudo chmod +x /etc/php5/composer.phar
sudo ln -s /etc/php5/composer.phar /usr/bin/composer
Install dependencies (vpn):
cd /home/wwwroot/wwwroot
composer install
Create Database and user, privileges:
mysql -p -u root
> create database yourdb;
> create user 'you'@'localhost';
> set password for you@localhost = PASSWORD('yourpasswd');
> grant all privileges on yourdb.* to you@localhost;
> show grants for you@localhost;
> flush privileges;
reset config for environment
cp .env.example .env
vi .env
DB_HOST=127.0.0.1
DB_DATABASE=yourdb
DB_USERNAME=yourame
DB_PASSWORD=yourpasswd
Database migration
php artisan key:generate
Application key [s1ZYF0BZydwbRRcrNc58crIC20uwBRzT] set successfully.
php artisan migrate
php artisan db:seed
Install bower, gulp
sudo npm install bower -g
sudo npm install gulp -g
Bower install dependencies (no-VPN prefered)
bower install
Generate css, js etc. frontend files
gulp
gulp watch
Make a directory for log files,
sudo mkdir /home/wwwlogs
sudo chown www-data.www-data /home/wwwlogs
Reload Nginx
sudo nginx -s reload
Check the status:
sudo service nginx status
Restart Nginx
sudo service nginx restart
sudo mv yoursite.conf sites-available/