Laravel Octane Menggunakan Server fly.io Semakin Cepat yang lain makin ketinggalan Karena Laravel octane sangat Cepat. begitulah Octane
Bekerja. Ditenagai Server Swoole dan dikombinasikan dengan Nginx Server.
Sekarang kita akan Mulai dengan Installasi Laravel terbaru :
Jika anda Menggunakan Composer
composer create-project laravel/laravel example-app
Lalu pergi ke project directory anda yaitu example-app dengan cara :
cd example-app
Nah Jika project sudah dibuat sekarang kita install Package Laravel Octane :
composer require laravel/octane
Dan Octane Harus diinstall dengan cara :
php artisan octane:install
Maka akan membuat file config/octane.php
silahkan tentukan Ingin menggunakan Swoole atau RoadRunner saya menyarankan menggunakan Swoole karna lebih cepat sedikit dibanding RoadRunner. Tetapi kembali lagi ke preferensi masing-masing.
Hati-hati ketika menggunakan Laravel Octane maka resiko beberapa package pihak ke tiga ada yang belum kompatible
Jika anda menggunakan Swoole maka silahkan install terlebih dahulu Swoole :
pecl install openswoole
Setelah menginstall Octane maka beberapa setup di .env
harus ditetapkan ketika anda ingin menggunakan Swoole atau RoadRunner
OCTANE_HTTPS=true OCTANE_SERVER=swoole
Dan coba sekarang jalankan di Local menggunakan :
php artisan octane:start --watch
Untuk membuat Server fly io diharapkan install flyctl
yaitu cli dari fly.io untuk memudahkan anda berinteraksi dengan server.
Jika anda belum mendaftar silahkan mendaftar ke website fly.io dan menginstall CLI
Jika menggunakan Brew :
brew install flyctl
Jika Menggunakan Shell Script :
curl -L https://fly.io/install.sh | sh
Lalu login ke Fly dashboard menggunakan cli
dengan cara :
flyctl auth login
Untuk mendeploy Aplikasi Laravel cukup mudah, sebelum mendeploy anda diharapkan menggunakan Docker Desktop dan bisa anda download di Docker Website agar nanti prosesnya mudah.
Posisi Ke Project yang sudah anda buat
cd ...project
Lalu mulai membuat Web App di Fly :
flyctl launch
nanti akan muncul pertanyaan dan auto deteksi bahwa project kita menggunakan Laravel. dan masukan nama Apps nya. dan ketika ada pertanyaan ingin deploy sekarang ? silahkan jawab No karna kita harus mensetup dulu docker nya nanti di server fly.io
Lalu cek di folder docker
dan anda akan menemukan file supervisor.conf
silahkan uncomment
dibagian [program:octane]
Jika anda menggunakan swoole maka pengaturannya seperti ini :
[program:octane] user=app priority=5 autostart=true autorestart=true stdout_events_enabled=true stderr_events_enabled=true ;rr command=php -d variables_order=EGPCS /var/www/html/artisan octane:start --server=roadrunner --host=0.0.0.0 --rpc-port=6001 --port=8000 command=php -d variables_order=EGPCS /var/www/html/artisan octane:start --server=swoole --host=0.0.0.0 --port=8000 stdout_logfile=/dev/stdout stdout_logfile_maxbytes=0 stderr_logfile=/dev/stderr stderr_logfile_maxbytes=0
Dan sekarang silahkan Deploy menggunakan :
flyctl deploy