Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Laravel
Code

Menyebarkan Aplikasi Web PHP Menggunakan Laravel Forge

by
Difficulty:BeginnerLength:LongLanguages:

Malay (Melayu) translation by Meyria (you can also view the original English article)

Pemaju suka mengotomatisasi perkara-untuk setiap proses antara pembangunan dan pengeluaran, mereka berminat untuk mempunyai skrip yang menjadikan aliran kerja lebih mudah. Ini juga berlaku dengan penggunaan.

Proses menolak membina akhir dan menggunakan aplikasinya semudah menekan butang Gerakan sekarang, tetapi itu bukan apa yang berlaku pada kebanyakan masa. Kami akhirnya melaburkan masa dan sumber kami dalam mengkonfigurasi pelayan, menubuhkan persekitaran, memindahkan fail yang kami fikir tidak relevan untuk membina pengeluaran, dan sebagainya.

Sesetengah daripada kita memilih untuk menghantar fail ke pelayan secara manual menggunakan FTP atau mempunyai kod ditolak ke repo GitHub, sementara yang lain lebih suka alat penyebaran untuk membuat proses lebih mudah. Satu alat sedemikian yang menjadikan penyebaran PHP sebagai angin adalah Laravel Forge.

Jangan biarkan nama jenama Laravel mengelirukan anda. Selain daripada Laravel, anda boleh menggunakan perkhidmatan ini untuk menjadi tuan rumah WordPress, Symphony, Statistic, atau projek web yang lain selagi PHP itu. Secara peribadi, saya suka Laravel Forge kerana kesederhanaan dan kemudahan untuk digunakan.

Dalam tutorial ini, saya akan membawa anda melalui langkah-langkah untuk hook Laravel Forge dengan AWS dan meneroka apa yang ditawarkannya.

Gambaran keseluruhan

Laravel Forge membolehkan anda berputar pelayan awan dan mengendalikan proses penyebaran menggunakan Git dan beberapa penyedia pelayan yang popular. Prosesnya dijelaskan di bawah:

Pertama, anda perlu menyambungkan AWS atau mana-mana penyedia awan lain ke akaun Forge anda. Seterusnya, sambungkan kawalan sumber anda seperti GitHub ke Forge. Anda kini dapat membuat pelayan. Pasang repositori kawalan sumber anda pada pelayan. Akhirnya, tekan butang deploy. Cukup mudah, bukan?

Pelayan yang diperuntukkan dengan Laravel Forge dihantar dengan susunan yang berikut:

  • Ubuntu 16.06
  • Nginx
  • PHP 7.2/7.1/7.0/5.6
  • MySQL/MariaDB/Postgres
  • Redis
  • Memcached

Sebaik sahaja pelayan telah dibuat, anda boleh mengkonfigurasi perkara selanjutnya.

Apabila anda mendaftar, anda boleh memilih antara rancangan yang berbeza yang mereka tawarkan. Saya memilih pelan asas $12/bulan; Walau bagaimanapun, anda akan mendapat percubaan percuma dengan akses kepada segala-galanya dalam senarai selama lima hari.

Sebaik sahaja anda telah log masuk, anda akan melihat sesuatu seperti ini di bawah.

Screenshot of Laravel Forge main screen once youre logged in

Anda boleh memilih antara Ocean Digital, AWS, Linode, dan Vultr untuk pembekal perkhidmatan. Sebagai alternatif, anda juga boleh menggunakan Forge dengan VPC tersuai. Bagi kawalan sumber, Forge menyokong GitHub, GitLab, dan Bitbucket. Dalam tutorial ini, saya akan membincangkan asas-asas mengkonfigurasi AWS untuk bekerja dengan Forge dan GitHub untuk mengawal sumber. Sebaik sahaja anda selesai, anda akan dapat membuat dan menyediakan sejumlah pelayan.

Jika anda menggunakan pembekal perkhidmatan lain dalam senarai, anda boleh melangkau langkah ini dan mengejar kami kemudian, selepas kami mengkonfigurasi AWS dan Laravel Forge.

Menetapkan Laravel Forge dan AWS

Untuk menetapkan Forge dan AWS, berikut langkah-langkah yang perlu anda ikuti.

1. Log masuk ke Laravel Forge

Log masuk ke Laravel Forge dan pilih AWS sebagai pembekal khidmat. Anda akan diminta untuk ID Kunci Akses (kekunci) dan Kunci Akses Rahsia (rahsia). Anda perlu membuat pengguna IAM tertentu dengan dasar yang menyediakan akses yang mencukupi kepada Laravel Forge. IAM adalah cara persetujuan pemetaan Amazon pada setiap pengguna supaya anda boleh membatalkan akses jika ada yang salah.

2. Buat Pengguna IAM Baru

Log masuk ke AWS Console dan buat pengguna IAM baharu.

Create an IAM user on AWS with programmatic access

Berikan pengguna nama yang bermakna dan tandakan kotak yang mengatakan Akses Programmatic.

3. Pilih Dasar yang Benar

Tetapkan kebenaran yang tepat untuk pengguna IAM laravel-forge. Buat kumpulan pengguna baru kerana kumpulan pengguna sangat sesuai untuk menguruskan kebenaran. Sekarang persoalan semulajadi adalah, "Apa dasar yang harus dipakai para pengguna?" Walaupun anda boleh memberikannya dengan AdministratorAccess, anda tidak boleh.

Create a user group with the right permissions

Sekiranya anda memerlukan Forge untuk membuat dan menyediakan pelayan bagi pihak anda, anda perlu menambah dua dasar:

  1. AmazonEC2FullAccess
  2. AmazonVPCFullAccess

4. Simpan Bukti Kredensial dan Mengesahkan

Sahkan akaun IAM dan, pada halaman seterusnya, anda akan menemui Kunci Akses dan Kod Rahsia.

Newly generated Access key and secret

Kepala ke halaman Laravel Forge dan tampalkannya di sana. Itu sahaja.

5. Taipkan Akaun GitHub Anda ke Forge

Sambungkan akaun GitHub/Bitbucket anda untuk Forge jika anda belum melakukannya. Forge akan menambahkan kunci publik ke akun Anda ketika membuat server. Sekiranya anda perlu menambah pembekal khidmat baru dan/atau mengemas kini kawalan sumber, anda mempunyai pilihan tersebut di dalam profil anda.

Mencipta Server Baru

Pergi ke Create Server page untuk menambah pelayan baru.

Laravel Forges interface for adding a new server

Pilih t2.micro dengan RAM 1GB jika anda berada di AWS free tier. Bagi tetapan lain, saya akan pergi dengan lalai. Ini termasuk MySQL untuk pangkalan data dan versi PHP 7.2. Anda boleh menyesuaikan nama pangkalan data di kemudian hari. Untuk memastikan perkara mudah, saya telah memutuskan untuk tidak menggunakan pengimbang beban. Jika anda tertanya-tanya mengenai resipi selepas pengeluaran, saya telah membincangkannya pada akhir tutorial ini.

Ia mungkin mengambil masa sehingga lima minit untuk dibuat oleh pelayan. Anda akan diberikan kelayakan untuk akses sudo. Simpan mereka di tempat yang selamat supaya anda boleh menggunakannya pada masa akan datang. Untuk melihat bahawa perkara berfungsi seperti yang diharapkan, pergi ke alamat IP pelayan dan anda akan melihat output phpinfo() pada skrin anda.

Antaramuka Pengurusan Pelayan

Antara muka yang anda lihat selepas membuat pelayan ialah papan pemuka pengurusan pelayan.

Server management dashboard

Anda boleh melakukan banyak perkara di sini, seperti:

  • pengurusan tapak
  • menambah kunci SSH
  • konfigurasi pangkalan data
  • mengemas kini tetapan PHP
  • penjadualan tugas
  • memulakan daemon
  • mengurus rangkaian dan mengkonfigurasi firewall
  • memantau permohonan menggunakan Blackfire atau Papertail
  • mengkonfigurasi tetapan meta

Itulah banyak ciri yang dibundel di sana. Saya telah membincangkan perkara penting dalam tutorial ini. Mari mulakan dengan pengurusan tapak. Mengikut dokumen Forge:

Tapak mewakili setiap "domain" pada pelayan anda. Tapak 'default' disertakan dengan setiap pelayan yang disediakan baru; Walau bagaimanapun, anda harus memadamkannya dan membuat tapak baru dengan nama domain yang sah apabila anda sudah bersedia untuk melancarkan tapak pengeluaran anda.

Seperti yang dapat anda lihat, Forge telah menyediakan tapak lalai untuk kami. Anda boleh membuat sejumlah laman web dan mengarahkannya ke subdomain anda. Untuk tujuan tutorial ini, saya akan berpegang kepada tapak lalai. Direktori web ditetapkan ke /public secara default. Ini adalah bagaimana ia perlu dikonfigurasikan untuk Laravel dan kebanyakan aplikasi web yang lain.

Jika anda mengklik pada tapak tertentu, anda akan melihat antara muka pengurusan tapak. Anda boleh menguruskan, menyebarkan, dan mengkonfigurasi tapak individu dari sini.

Pengurusan Tapak Antarmuka

Inilah antara muka yang awalnya kelihatan seperti.

You can add the Git repo from this screen

Anda boleh memasang dari repositori Git atau memasang WordPress. Untuk tujuan tutorial ini, saya telah mencipta sampel Hubungi kami aplikasi yang boleh dipalsukan ke dalam akaun anda. Anda boleh menentukan nama projek dan cawangan. Sebaik sahaja anda selesai, anda harus mempunyai kawalan untuk menggunakan aplikasi anda.

Site management dashboard with deployment controls

Saya akan memberi anda lawatan pantas pilihan yang ada.

Menyebarkan Kini dan Menyebarkan Cepat

Untuk menggunakan, anda boleh menggunakan secara manual menggunakan butang Deploy now. Sebagai alternatif, anda boleh mengaktifkan pilihan Quick Deploy, yang secara automatik menyebarkan projek apabila anda menolak kod ke cawangan utama repo GitHub yang dipilih.

Penyebaran Skrip

Penyebaran default skrip menarik kod dari repositori, memasang dependensi, memulakan pelayan, dan menjalankan migrasi setiap kali aplikasi digunakan. Inilah skrip penempatan sebenar.

Jika anda perlu tweak dan menambah sesuatu yang lebih, anda boleh.

Penyebaran URL Trigger

Anda boleh menggunakannya untuk menyatukan aplikasi anda ke dalam perkhidmatan pihak ketiga atau membuat skrip penempatan tersuai. Apabila URL menerima permintaan, skrip penempatan dicetuskan.

Kemas kini Repo dan Cawangan

Sekiranya anda perlu mengemas kini cawangan atau memasang versi baru projek yang sama di repositori yang berbeza, anda boleh menggunakan pilihan ini. Jika anda mengemas kini cawangan, anda mungkin perlu mengemas kini nama cawangan dalam skrip penempatan juga.

Alam Sekitar

Forge secara automatik menjana fail persekitaran untuk aplikasi itu. Beberapa butiran seperti kelayakan pangkalan data ditambah secara automatik ke persekitaran. Walau bagaimanapun, jika aplikasi menggunakan API, anda boleh meletakkan kunci API dengan selamat dalam persekitaran. Walaupun anda menjalankan aplikasi web PHP generik, anda boleh mengakses pembolehubah ENV menggunakan kaedah getenv().

Pekerja Beratur

Memulakan pekerja barisan di Forge adalah sama seperti menjalankan queue:work arahan Artisan. Forge menguruskan pekerja antrian menggunakan monitor proses yang dipanggil Supervisor sehingga prosesnya terus berjalan secara permanen. Anda boleh membuat pelbagai beratur berdasarkan keutamaan beratur atau sebarang klasifikasi lain yang anda dapati berguna.

SSL

Mengamankan SSL untuk laman web adalah apa-apa tetapi mudah dan bebas pada masa lalu. Forge membolehkan anda memasang sijil yang ada atau anda boleh mendapatkan sijil percuma dari LetsEncrypt. Ia cepat dan mudah. Jika anda memerlukan SSL untuk subdomain wildcard, anda boleh menambah sijil Cloudflare percuma untuk Forge.

Kembali ke antara muka Pengurusan Server, kami mempunyai kekunci SSH.

Menambah Kunci SSH

Walaupun kebanyakan pilihan boleh dikonfigurasi boleh didapati di papan pemuka, jika anda perlu menyambung ke pelayan, anda harus melakukannya menggunakan SSH. SSH adalah cara yang lebih selamat untuk masuk ke VPS dan memberikan lebih banyak perlindungan daripada kata laluan.

Untuk mengakses pelayan melalui SSH, anda perlu menjana pasangan kunci jika anda belum melakukannya. Kunci awam akan dapat diakses oleh pelayan, dan kunci persendirian akan berada di host anda. Anda boleh menggunakan persediaan untuk menyambung ke contoh pelayan.

Adding SSH keys to Forge server

Nota: Kunci SSH yang ditambahkan dari papan pemuka pengurusan pelayan akan khusus kepada pelayan tersebut. Sekiranya anda perlu menambah kekunci secara automatik kepada semua pelayan dari sini, anda boleh menambahnya dari tetapan Profil anda.

Untuk menjana pasangan kunci, jalankan arahan berikut.

Anda akan ditanya beberapa soalan seperti fail di mana anda ingin menyimpan kunci dan frasa laluan untuk keselamatan tambahan. Seterusnya, tambah kekunci SSH kepada agen ssh.

Salin kekunci awam dan tambahkan ke kekunci senarai SSH Forge.

Mengkonfigurasi PHP dan MySQL

Anda boleh menggunakan antara muka untuk mengkonfigurasi PHP dan MySQL. Untuk pangkalan data, pilihan yang ada termasuk:

  • Buat pangkalan data baru.
  • Tambah pengguna baharu.
  • Kemas kini akses pengguna ke pangkalan data.
  • Kemas kini pengetahuan Forge tentang kata laluan.

Pastikan anda mengisi data yang dikemas kini dalam fail .env anda.

Anda boleh mengkonfigurasi tetapan PHP berikut:

  • Anda boleh mengkonfigurasi tetapan PHP berikut:
  • Tukar saiz fail muat naik.
  • Optimalkan OPCache untuk pengeluaran supaya kod PHP yang dikompilasi akan disimpan dalam ingatan.

Tetapan penting lain

Di sini saya telah menyenaraikan beberapa tetapan lain yang tersedia.

Penjadualan Tugas

Anda boleh menggunakan penjadual Forge untuk menjadualkan tugasan berulang atau menjalankan tugas cron. Jika anda perlu menghantar e-mel secara berkala, membersihkan sesuatu, atau menjalankan skrip, anda boleh menggunakan penjadual tugas. Satu tugas dicipta secara lalai yang menjalankan composer self-update setiap malam. Anda boleh mencuba penjadualan yang baru dengan kekerapan pilihan anda.

Memulakan Daemon

Daemon adalah program komputer yang berjalan dalam proses latar belakang. Laravel Forge membolehkan anda memulakan daemon dan menggunakan Penyelia untuk memastikan bahawa daemon masih berjalan. Sekiranya daemon mengalami kemalangan kerana ada sebab, Supervisor akan memulakan semula skrip secara automatik.

Memantau Permohonan

Laravel Forge mempunyai sokongan terbina dalam alatan yang memantau permohonan anda untuk mengukur prestasi dengan mengumpulkan data mengenai sumber seperti memori, masa CPU, dan operasi I/O. Alat yang tersedia ialah Blackfire.io dan Papertrail. Untuk memulakan profil aplikasi anda, anda hanya perlu mendapatkan bukti kelayakan yang betul dari laman web pihak ketiga dan itu sahaja.

Mengkonfigurasi Rangkaian Server dan Firewall

Sekiranya anda perlu mengemas kini tetapan firewall, anda tidak perlu pergi ke konsol AWS untuk membuatnya berlaku. Anda boleh membuat peraturan firewall baru dari papan pemuka. Sekiranya anda mempunyai pelayan lain yang diperuntukkan menggunakan penyedia dan rantau yang sama, anda boleh menyediakan rangkaian pelayan supaya mereka dapat berkomunikasi tanpa rasa sakit.

Ringkasan

Laravel Forge adalah alat yang luar biasa yang membuat penggunaan sekeping kek. Ia mempunyai banyak ciri dan UI yang mudah digunakan yang membolehkan anda membuat dan menyediakan pelayan dan menggunakan aplikasi tanpa sebarang masalah. Sebaik sahaja anda telah mengkonfigurasi pembekal khidmat, kemungkinan besar anda tidak perlu mengakses konsol AWS untuk menguruskan pelayan lagi.

Dalam tutorial ini, saya telah meliputi asas-asas untuk mengkonfigurasi AWS dengan Laravel Forge dan langkah-langkah untuk menyediakan pelayan dan menggunakan aplikasi. Saya juga membincangkan hampir semua ciri yang ada di antara muka Forge.

Bagi anda yang baru sahaja bermula dengan Laravel atau ingin mengembangkan pengetahuan, laman web, atau aplikasi dengan sambungan, kami mempunyai pelbagai perkara yang anda boleh belajar di Envato Market.

Adakah anda mempunyai pengalaman untuk berkongsi dengan menggunakan aplikasi PHP menggunakan Laravel Forge atau alat penyebaran popular lain? Beri tahu kami di dalam komen.

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.