Tutorial Membuat Website Ecommerce Menggunakan Laravel

 


                                                                https://radnet-digital.id/

Daftar Isi

  • Pengenalan dan Overview
  • Persiapan Environment Development
  • Instalasi dan Konfigurasi VirtualBox
  • Menyiapkan Ubuntu Server di VirtualBox
  • Konfigurasi Shared Folder
  • Instalasi LEMP Stack
  • Menyiapkan Proyek Laravel
  • Pengembangan dengan VSCode
  • Membuat Katalog Website
  • Deployment dan Konfigurasi
  • Keamanan dan Optimisasi
  • Troubleshooting
  • Praktik
  • Maintenance
  1. Pengenalan dan Overview 1.1 Tujuan Panduan

Panduan ini dirancang untuk membantu Anda membangun situs web katalog menggunakan Laravel dalam virtual environment yang dikelola dengan VirtualBox. Fitur utama dari situs web katalog ini meliputi:

  • Manajemen produk
  • Kategori produk
  • Gambar produk
  • Pencarian dan filter
  • Panel admin
  • API endpoints

1.2 Arsitektur Sistem

  • Sistem Host: Ubuntu Desktop
  • Sistem Guest: Ubuntu Server di VirtualBox
  • Web Server: Nginx
  • Database: MySQL
  • Versi PHP: 8.2
  • Versi Laravel: 10.x
  • Development Tools: VSCode

1.3 Kebutuhan Sistem

  • RAM minimal 8GB
  • Penyimpanan minimal 50GB
  • Prosesor dengan dukungan virtualisasi
  • Koneksi internet yang stabil
  1. Persiapan Development Environment 2.1 Pembaruan Sistem Ubuntu Host

Untuk memperbarui daftar paket dan sistem:

sudo apt update
sudo apt upgrade -y

Instal alat-alat dasar:

sudo apt install -y build-essential curl wget git unzip net-tools

2.2 Instalasi PHP dan Ekstensi

Menambahkan repositori PHP:

sudo add-apt-repository ppa:ondrej/php
sudo apt update

Menginstal PHP dan ekstensi:

sudo apt install -y php8.1 \
    php8.1-cli \
    php8.1-common \
    php8.1-curl \
    php8.1-dev \
    php8.1-gd \
    php8.1-imagick \
    php8.1-imap \
    php8.1-intl \
    php8.1-mbstring \
    php8.1-mysql \
    php8.1-opcache \
    php8.1-pgsql \
    php8.1-redis \
    php8.1-soap \
    php8.1-xml \
    php8.1-zip

Verifikasi instalasi:

php -v

2.3 Instalasi Composer

Untuk mengunduh dan memverifikasi installer Composer:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === file_get_contents('https://composer.github.io/installer.sig')) { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Instalasi Composer secara global:

sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
php -r "unlink('composer-setup.php');"

Verifikasi instalasi Composer:

composer --version

2.4 Instalasi VSCode

Untuk menginstal VSCode:

sudo snap install code --classic

Instal ekstensi yang dibutuhkan:

code --install-extension bmewburn.vscode-intelephense-client
code --install-extension onecentlin.laravel-blade
code --install-extension amiralizadeh9480.laravel-extra-intellisense
code --install-extension ryannaddy.laravel-artisan
code --install-extension shufo.vscode-blade-formatter
code --install-extension mikestead.dotenv
code --install-extension esbenp.prettier-vscode
  1. Instalasi dan Konfigurasi VirtualBox 3.1 Instalasi VirtualBox

Untuk menambahkan repositori VirtualBox dan menginstalnya:

wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] http://download.virtualbox.org/virtualbox/debian $(lsb_release -cs) contrib"
sudo apt update
sudo apt install -y virtualbox-6.1

Menginstal Extension Pack:

wget https://download.virtualbox.org/virtualbox/6.1.30/Oracle_VM_VirtualBox_Extension_Pack-6.1.30.vbox-extpack
sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-6.1.30.vbox-extpack

3.2 Konfigurasi VirtualBox

Buat VM baru di VirtualBox dengan pengaturan berikut:

  • Nama: Laravel-Catalog
  • Tipe: Linux
  • Versi: Ubuntu (64-bit)
  • Memori: 4096 MB
  • CPU: 2 core
  • Hard disk: 40 GB (VDI, dialokasikan dinamis)
  • Konfigurasi jaringan: Adapter 1 (NAT), Adapter 2 (Host-only Adapter)

Untuk membuat network host-only:

VBoxManage hostonlyif create
VBoxManage hostonlyif ipconfig vboxnet0 --ip 192.168.11.165
  1. Menyiapkan Ubuntu Server di VirtualBox 4.1 Instalasi Ubuntu Server

Langkah-langkah untuk menginstal Ubuntu Server di VM:

  • Boot dari ISO
  • Pilih bahasa dan konfigurasi jaringan
  • Gunakan pengaturan default untuk partisi dan pengaturan server lainnya

4.2 Post-Instalasi

Setelah berhasil masuk ke server:

ssh laravel@192.168.11.165
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl wget git unzip net-tools
sudo timedatectl set-timezone Asia/Jakarta
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enable
  1. Konfigurasi Folder Bersama 5.1 Instalasi Guest Additions

Untuk menginstal Guest Additions:

sudo apt install -y build-essential dkms linux-headers-$(uname -r)
sudo mount /dev/cdrom /mnt
cd /mnt
sudo ./VBoxLinuxAdditions.run
sudo reboot

5.2 Setup Shared Folder

Di VirtualBox Manager, tambahkan shared folder dan atur mount point pada VM:

sudo mkdir -p /mnt/laravel-catalog
sudo usermod -aG vboxsf laravel
sudo mount -t vboxsf laravel-catalog /mnt/laravel-catalog
sudo chown -R laravel:laravel /mnt/laravel-catalog

5.3 Auto-mount pada Startup

Untuk membuat folder ter-mount otomatis pada setiap startup:

sudo nano /etc/fstab

Tambahkan baris berikut:

laravel-catalog /mnt/laravel-catalog vboxsf defaults,_netdev 0 0
  1. Instalasi LEMP Stack 6.1 Nginx

Untuk menginstal Nginx:

sudo apt install -y nginx
sudo systemctl start nginx
sudo systemctl enable nginx

Verifikasi instalasi dengan curl:

curl localhost

6.2 MySQL

Instalasi dan konfigurasi MySQL:

sudo apt install -y mysql-server
sudo mysql_secure_installation

Membuat database dan user:

sudo mysql -u root
CREATE DATABASE laravel_catalog;
CREATE USER 'laravel'@'localhost' IDENTIFIED BY 'secure_password';
GRANT ALL PRIVILEGES ON laravel_catalog.* TO 'laravel'@'localhost';
FLUSH PRIVILEGES;
EXIT;

6.3 PHP-FPM

Instalasi PHP-FPM dan ekstensi:

sudo apt install -y php8.1-fpm \
    php8.1-cli \
    php8.1-common \
    php8.1-curl \
    php8.1-dev \
    php8.1-gd \
    php8.1-imagick \
    php8.1-imap \
    php8.1-intl \
    php8.1-mbstring \
    php8.1-mysql \
    php8.1-opcache \
    php8.1-pgsql \
    php8.1-redis \
    php8.1-soap \
    php8.1-xml \
    php8.1-zip

Konfigurasi PHP di /etc/php/8.1/fpm/php.ini.

  1. Menyiapkan Proyek Laravel 7.1 Instalasi Composer di VM

Instal Composer di VM dan buat proyek Laravel:

composer create-project laravel/laravel .

7.2 Konfigurasi Laravel dan database.

  1. Pengembangan dengan VSCode 8.1 Setup workspace di VSCode dan konfigurasi Git untuk proyek.

  2. Membuat Katalog Website 9.1 Membuat migrasi dan model untuk produk, kategori, dan gambar produk.

Setelah itu, lanjutkan dengan pembuatan controller, tampilan, dan fungsionalitas lainnya sesuai kebutuhan.


Komentar

Postingan populer dari blog ini

Cara Mengupload Projek Laravel ke Hosting dan Domain Gratis (InfinityFree)

Automation With Ansible by Adinusa.id

Mempelajari "Linux System Administration" by Adinusa