Laravel adalah framework aplikasi web PHP open-source yang populer. Ini memiliki sintaks yang ekspresif dan elegan dan menyediakan alat yang dibutuhkan untuk aplikasi besar dan kuat. Deployer adalah alat penyebaran PHP sumber terbuka modular yang dikemas dengan fitur dan pengoptimalan hemat waktu. Ini mendukung penyebaran banyak kerangka kerja populer, termasuk Laravel, Symfony, Zend Framework dan CodeIgniter. Dalam tutorial ini, kami akan menunjukkan cara men-deploy aplikasi Laravel dengan Deployer di Ubuntu 16.04.
Persyaratan
- Server Ubuntu 16.04 dengan akses root atau sudo.
- Server Git. Anda dapat menggunakan server git yang dihosting sendiri atau layanan Git populer seperti Gitlab, Github, atau Bitbucket.
Menyiapkan Lingkungan Pengembangan Lokal
Anda akan menerapkan aplikasi Laravel dari komputer lokal Anda, jadi pertama-tama Anda perlu menyiapkan lingkungan pengembangan lokal dan menginstal Deployer.
Pertama jika Anda belum menginstal composer di komputer lokal Anda, instal dengan:
curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer chmod +x /usr/local/bin/composer
Selanjutnya, buat proyek Laravel baru di komputer lokal Anda:
composer create-project --prefer-dist laravel/laravel my-laravel-app
Untuk menginstal Deployer di komputer lokal Anda, jalankan perintah berikut di konsol:
curl -LO https://deployer.org/deployer.phar mv deployer.phar /usr/local/bin/dep chmod +x /usr/local/bin/dep
Terakhir, sambungkan ke server git dengan menambahkan kunci ssh PC lokal Anda ke server git.
Jika Anda tidak memiliki kunci SSH, Anda dapat memeriksa kunjungi artikel kami tentang Cara Mengatur Kunci SSH di Ubuntu 16.04
Jika Anda menggunakan layanan yang dihosting Git, Anda dapat memeriksa dokumentasi mereka tentang cara menambahkan kunci SSH ke akun Anda.
- Tambahkan kunci SSH ke akun GitHub
- Tambahkan kunci SSH ke akun GitLab
- Tambahkan kunci SSH ke akun Bitbucket
Instal dan konfigurasikan PHP
Sekarang setelah mesin pengembangan lokal Anda siap sebelum kami dapat mulai menerapkan, kami perlu mengonfigurasi server dengan menginstal semua layanan yang diperlukan.
Untuk menginstal versi stabil terbaru dari PHP versi 7 dan semua modul yang diperlukan, jalankan:
sudo apt update sudo apt install php7.0-fpm php7.0-cli php7.0-gd php7.0-mysql php7.0-mcrypt php-pear php7.0-curl
Kita juga perlu menginstal composer:
curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer chmod +x /usr/local/bin/composer
Instal dan konfigurasikan Nginx
Instal versi Nginx stabil terbaru dari repositori resmi Ubuntu:
sudo apt install nginx
Selanjutnya, buat blok server Nginx baru:
sudo nano /etc/nginx/sites-available/my-laravel-app.com
server { listen 80; server_name my-laravel-app.com; root /var/www/html/my-laravel-app.com/current/public; index index.html index.htm index.php; charset utf-8; location / { try_files $uri $uri/ /index.php?$query_string; } location = /favicon.ico { access_log off; log_not_found off; } location = /robots.txt { access_log off; log_not_found off; } error_page 404 /index.php; location ~ \.php$ { include snippets/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; } }
Aktifkan blok server dengan membuat tautan simbolis:
sudo ln -s /etc/nginx/sites-available/my-laravel-app.com /etc/nginx/sites-enabled/my-laravel-app.com
Uji konfigurasi Nginx dan mulai ulang nginx:
sudo nginx -t sudo service nginx restart
Buat database MySQL
Jika Anda belum menginstal MySQL, Anda dapat mengunjungi tutorial kami tentang Cara Menginstal MySQL di Ubuntu 16.04
Untuk membuat database untuk aplikasi laravel, jalankan perintah berikut:
mysql -u root -p
CREATE DATABASE laravel; GRANT ALL PRIVILEGES ON laravel.* TO 'laraveluser'@'localhost' IDENTIFIED BY 'your-password'; FLUSH PRIVILEGES; \q
Buat Pengguna Penyebar
Tujuan utama dari pengguna ini adalah untuk menyebarkan aplikasi Laravel kami dengan menjalankan perintah di server kami.
Untuk membuat pengguna jalankan perintah berikut:
sudo adduser deployer
Baik Nginx dan PHP FPM berjalan sebagai pengguna www-data. File dan direktori yang dibuat oleh pengguna deployer harus dapat ditulis oleh www-user.
Jalankan perintah berikut untuk menambahkan pengguna deployer ke grup www-data:
sudo usermod -aG www-data deployer
Ubah kepemilikan root dokumen dengan menjalankan:
sudo chown deployer:www-data /var/www/html/my-laravel-app.com
dan atur ID grup pengguna
sudo chmod g+s /var/www/html/my-laravel-app.com
Dengan perintah di atas, semua file dan subdirektori baru yang dibuat dalam `/var/www/html/my-laravel-app.com` akan mewarisi ID grup direktori.
Tambahkan kunci SSH publik pengguna lokal Anda ke file /home/deployer/.ssh/authorized_keys sehingga Anda dapat masuk ke server jarak jauh dari komputer lokal Anda tanpa kata sandi sebagai penyebar pengguna dan menjalankan perintah penerapan.
Terakhir, Anda perlu menambahkan kunci SSH pengguna deployer ke server git Anda, sama seperti yang Anda lakukan dengan pengguna komputer lokal Anda.
Menggunakan Penyebar
Buka terminal komputer lokal Anda dan alihkan ke direktori proyek laravel.
cd ~/my-laravel-app
Jalankan perintah berikut untuk membuat file resep bernama deploy.php
.
dep init -t Laravel
Buka file dan konfigurasikan dan atur kredensial repositori yang benar dan konfigurasikan parameter host sebagai berikut:
host('your_remove_server_ip') ->user('deployer') ->set('deploy_path', '/var/www/html/my-laravel-app.com');
Dari direktori proyek di dalam, Anda sekarang dapat menjalankan perintah `dep` untuk menerapkan aplikasi Anda.
Untuk informasi lebih lanjut tentang cara mengonfigurasi dan menggunakan Deployer, silakan kunjungi halaman dokumentasi mereka.
Tentu saja, Anda tidak perlu mengonfigurasi server jarak jauh Anda jika Anda menggunakan salah satu dari Server Ubuntu Tercepat kami, dalam hal ini Anda dapat meminta admin Linux ahli kami untuk membuat pengguna deployer dan menginstal serta mengonfigurasi semua layanan yang diperlukan untuk Anda. . Mereka tersedia 24×7 dan akan segera memenuhi permintaan Anda.
PS. Jika Anda menyukai posting ini, tentang cara Menyebarkan Aplikasi Laravel Secara Otomatis dengan Deployer di Ubuntu 16.04, silakan bagikan dengan teman-teman Anda di jejaring sosial menggunakan tombol di sebelah kiri atau cukup tinggalkan balasan di bawah. Terima kasih.