Laravel – checkout from git and install by composer on a new Debian/Ubuntu server

fmchanprogrammingLeave a Comment

Environment: Laravel 5.8, PHP 7.0, Debian 9.12

First, upgrade PHP to the latest one (7.3)

sudo apt update
sudo apt upgrade -y
sudo apt -y install lsb-release apt-transport-https ca-certificates 

sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php7.3.list

sudo apt update
sudo apt -y install php7.3
php -v

sudo apt install php7.3-cli php7.3-fpm php7.3-json php7.3-pdo php7.3-mysql php7.3-zip php7.3-gd  php7.3-mbstring php7.3-curl php7.3-xml php7.3-bcmath php7.3-json

sudo apt install libapache2-mod-php7.3
apt policy php7.3-cli

Second, install latest composer (1.9.3)

sudo apt install php-cli php-zip wget unzip

sudo php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

HASH="$(wget -q -O - https://composer.github.io/installer.sig)"

sudo php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

composer

sudo rm composer-setup.php

Third, install latest git (2.11.0) and checkout the repository. Then ignore file permission checking

sudo apt install git
git --version
cd /var/www/html
sudo git clone https://you@bitbucket.org/you/laravel.git
cd laravel
sudo git config core.fileMode false

Forth, install Laravel project by composer.

sudo composer install
sudo composer update
sudo nano .env // change config (e.g. mysql account)
sudo php artisan key:generate
sudo php artisan storage:link
sudo php artisan migrate:refresh --seed
sudo php artisan serve --host 0.0.0.0

Finally, check the url with port 8000

Leave a Reply

Your email address will not be published. Required fields are marked *