Sådan implementeres Laravel-applikationer automatisk med Deployer på Ubuntu 16.04

Laravel er en populær, open source PHP webapplikationsramme. Den har en udtryksfuld og elegant syntax og giver værktøjer til brug for store, robuste applikationer. Deployer er et modulopbygget PHP-implementeringsværktøj, der er pakket med tidsbesparende funktioner og optimeringer. Den understøtter udbredelse af mange populære rammer, herunder Laravel, Symfony, Zend Framework og CodeIgniter. I denne vejledning viser vi dig, hvordan du implementerer en Laravel ansøgning med Deployer på Ubuntu 16.04.

Krav

Opsætning af lokalt udviklingsmiljø

Du vil implementere din Laravel-applikation fra din lokale computer, så du skal først opsætte det lokale udviklingsmiljø og installere Deployer.

Først hvis du allerede ikke har komponist installeret på din lokale computer, skal du installere den med:

curl -sS https://getcomposer.org/installer | php sudo mv composer.phar / usr / local / bin / komponist chmod + x / usr / local / bin / composer

Opret derefter et nyt Laravel-projekt på din lokale computer:

komponent create-project --prefer-dist laravel / laravel my-laravel-app

For at installere Deployer på din lokale computer, kør følgende kommandoer i konsollen:

curl -LO https://deployer.org/deployer.phar mv deployer.phar / usr / local / bin / dep chmod + x / usr / lokal / bin / dep  

Slut endelig forbindelse til git-serveren ved at tilføje din lokale pc ssh-nøgle til git-serveren.

Hvis du ikke har SSH nøgler, kan du tjekke vores artikel om Sådan opsættes SSH-taster på Ubuntu 16.04

Hvis du bruger Git hosted service, kan du tjekke deres dokumentation om, hvordan du tilføjer SSH-nøglen til din konto.

Installer og konfigurer PHP

Nu hvor din lokale udviklingsmaskine er klar, før vi kan begynde at implementere, skal vi konfigurere serveren ved at installere alle de nødvendige tjenester.

For at installere den nyeste stabile version af PHP version 7 og alle nødvendige moduler, kør:

sudo apt opdatering sudo apt install php7.0-fpm php7.0-cli php7.0-gd php7.0-mysql php7.0-mcrypt php-pære php7.0-krølle

Vi skal også installere komponist:

curl -sS https://getcomposer.org/installer | php sudo mv composer.phar / usr / local / bin / komponist chmod + x / usr / local / bin / composer

Installer og konfigurer Nginx

Installer den seneste stabile Nginx-version fra de officielle Ubuntu-lagre:

sudo apt install nginx

Opret derefter en ny Nginx-serverblok:

sudo nano /etc/nginx/sites-available/my-laravel-app.com
server {lyt 80; servernavn my-laravel-app.com; root /var/www/html/my-laravel-app.com/current/public; index index.html index.htm index.php; charset utf-8; placering / {try_files $ uri $ uri / /index.php?$query_string; } placering = https: //websetnet.b-cdn.net/favicon.x12107.ico {access_log off; log_not_found off; } placering = /robots.txt {access_log fra; log_not_found off; } error_page 404 /index.php; placering ~ .php $ {inkluderer uddrag / fastcgi-php.conf; fastcgi_param SCRIPT_FILENAME $ realpath_root $ fastcgi_script_name; fastcgi_param DOCUMENT_ROOT $ realpath_root; fastcgi_pass unix: /run/php/php7.0-fpm.sock; }}

Aktivér serverblokken ved at oprette et symbolsk link:

sudo ln -s /etc/nginx/sites-available/my-laravel-app.com /etc/nginx/sites-enabled/my-laravel-app.com

Test Nginx-konfigurationen og genstart nginx:

sudo nginx -t sudo service nginx genstart

Opret MySQL-database

Hvis du ikke har MySQL installeret, kan du besøge vores vejledning om Sådan installeres MySQL på Ubuntu 16.04

For at oprette en database til laravel-applikationen, kør følgende kommandoer:

mysql -u rod-p
CREATE DATABASE laravel; GIVE ALL PRIVILEGES ON laravel. * TIL 'laraveluser' @ 'localhost' IDENTIFIED AF 'din-adgangskode'; FLUSH PRIVILEGES; q

Opret en Deployer-bruger

Hovedformålet med denne bruger er at implementere vores Laravel-applikation ved at udføre kommandoer på vores server.

For at oprette brugeren køre følgende kommando:

sudo adduser deployer

Både Nginx og PHP FPM kører som en bruger www-data. Filerne og mapperne, der oprettes af implementeringsbrugeren, skal kunne skrives af www-brugeren.

Kør følgende kommando for at tilføje implementeringsbrugeren til www-data gruppen:

sudo usermod -AG www-data deployer

Skift dokumentets ejerskab ved at køre:

sudo chown deployer: www-data /var/www/html/my-laravel-app.com

og angiv brugergruppe-id

sudo chmod g + s /var/www/html/my-laravel-app.com

Med ovenstående kommando vil alle nye filer og underkataloger, der er oprettet i `/ var / www / html / my-laravel-app.com`, arve kataloggruppen ID.

Tilføj din lokale bruger offentlige SSH-nøgle til filen /home/deployer/.ssh/authorized_keys, så du kan logge ind på fjernbetjeningen adskille fra din lokale computer uden en adgangskode som brugerdistributør og køre implementeringskommandoerne.

Endelig skal du tilføje brugerens SSH-nøgle til din git-server, som du gjorde med din lokale computerbruger.

Brug af Deployer

Åbn din lokale computer terminal og skift til laravel projektmappen.

cd ~ / my-laravel-app

Kør følgende kommando for at oprette en opskrift fil med navnet deploy.php.

dep init -t Laravel

Åbn filen og konfigurer og angiv de korrekte arkivoplysninger og konfigurér værtsparameteren som følger:

vært ('your_remove_server_ip') -> bruger ('deployer') -> sæt ('deploy_path', '/var/www/html/my-laravel-app.com');

Fra den indvendige projektmappe kan du nu køre kommandoen `dep` for at implementere din applikation.

For mere information om, hvordan du konfigurerer og bruger Deployer, besøg venligst deres dokumentationsside.

Oprindelig artikel

Efterlad en kommentar

Dette websted bruger Akismet til at reducere spam. Lær, hvordan dine kommentardata behandles.