<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: ali zaenal</title>
    <description>The latest articles on Forem by ali zaenal (@azet).</description>
    <link>https://forem.com/azet</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1179428%2Ffc13337d-38a2-4ab2-9768-a51c84313945.png</url>
      <title>Forem: ali zaenal</title>
      <link>https://forem.com/azet</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/azet"/>
    <language>en</language>
    <item>
      <title>Complete Get started with tensorflow-metal in bahasa Indonesia.</title>
      <dc:creator>ali zaenal</dc:creator>
      <pubDate>Sun, 20 Apr 2025 18:31:53 +0000</pubDate>
      <link>https://forem.com/azet/complete-get-started-with-tensorflow-metal-in-bahasa-indonesia-35lj</link>
      <guid>https://forem.com/azet/complete-get-started-with-tensorflow-metal-in-bahasa-indonesia-35lj</guid>
      <description>&lt;h2&gt;
  
  
  Requirements
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Mac computers with Apple silicon or AMD GPUs&lt;/li&gt;
&lt;li&gt;macOS 12.0 or later (&lt;a href="https://beta.apple.com/sp/betaprogram/" rel="noopener noreferrer"&gt;Get the latest beta&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Python 3.9 or later&lt;/li&gt;
&lt;li&gt;Xcode command-line tools: &lt;code&gt;xcode-select --install&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;requirement ditulis pada april 2025 untuk info terbaru kunjungi tautan resmi &lt;a href="https://developer.apple.com/metal/tensorflow-plugin/" rel="noopener noreferrer"&gt;apple developer&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Instalasi awal &lt;code&gt;tensorflow-metal&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;Untuk instalasi awal silahkan kunjungi dan ikuti arahan dari web resmi untuk mendapatkan informasi terbaru melalui link berikut : &lt;a href="https://developer.apple.com/metal/tensorflow-plugin/" rel="noopener noreferrer"&gt;https://developer.apple.com/metal/tensorflow-plugin/&lt;/a&gt; .&lt;/p&gt;

&lt;p&gt;Pastikan anda menyelesaikan tahap tersebut untuk kemudian lanjut ke tahap selanjutnya pada artikel ini.&lt;/p&gt;

&lt;h2&gt;
  
  
  Penggunaan awal pada environment python
&lt;/h2&gt;

&lt;h4&gt;
  
  
  Pengecekan awal
&lt;/h4&gt;

&lt;p&gt;Di terminal dalam &lt;strong&gt;virtual‑env&lt;/strong&gt; yang Anda buat:&lt;br&gt;
masuk ke python menggunakan terminal favorit anda dengan menjalankan command berikut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;python
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;setelahnya langsung masukan command berikut kemudian tekan &lt;code&gt;return&lt;/code&gt;/&lt;code&gt;enter&lt;/code&gt; :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;python &lt;span class="nt"&gt;-m&lt;/span&gt; pip list | &lt;span class="nb"&gt;grep &lt;/span&gt;tensorflow
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ekspektasi yang seharusnya :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;tensorflow                   2.19.0
tensorflow-io-gcs-filesystem 0.37.1
tensorflow-macos             2.16.2
tensorflow-metal             1.2.0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;pastikan &lt;code&gt;tensorflow&lt;/code&gt; dan &lt;code&gt;tensorflow-metal&lt;/code&gt; telah terinstall dan terdeteksi dengan baik.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Jika anda mengalami kendala anda dapat lakukan instalasi singkat melalui :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;python &lt;span class="nt"&gt;-m&lt;/span&gt; pip &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-U&lt;/span&gt; tensorflow tensorflow-metal
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;lalu ulangi step awal melakukan pengecekan sebelumnya.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Jika sudah benar dan sesuai&lt;/strong&gt;&lt;br&gt;
buka terminal favorit anda dan ikuti insturksi berikut :&lt;/p&gt;

&lt;p&gt;masuk ke python :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;python
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;import tensorflow as tf

from tensorflow.python.client import device_lib

tf.debugging.set_log_device_placement&lt;span class="o"&gt;(&lt;/span&gt;True&lt;span class="o"&gt;)&lt;/span&gt;



print&lt;span class="o"&gt;(&lt;/span&gt;device_lib.list_local_devices&lt;span class="o"&gt;())&lt;/span&gt;



print&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"Number GPUs Available: "&lt;/span&gt;,

len&lt;span class="o"&gt;(&lt;/span&gt;tf.config.experimental.list_physical_devices&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'GPU'&lt;/span&gt;&lt;span class="o"&gt;)))&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;seharusnya akan menampilkan output sebagai berikut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;Python 3.9.6 &lt;span class="o"&gt;(&lt;/span&gt;default, Nov 11 2024, 03:15:38&lt;span class="o"&gt;)&lt;/span&gt; 
&lt;span class="o"&gt;[&lt;/span&gt;Clang 16.0.0 &lt;span class="o"&gt;(&lt;/span&gt;clang-1600.0.26.6&lt;span class="o"&gt;)]&lt;/span&gt; on darwin
Type &lt;span class="s2"&gt;"help"&lt;/span&gt;, &lt;span class="s2"&gt;"copyright"&lt;/span&gt;, &lt;span class="s2"&gt;"credits"&lt;/span&gt; or &lt;span class="s2"&gt;"license"&lt;/span&gt; &lt;span class="k"&gt;for &lt;/span&gt;more information.
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; import tensorflow as tf
/Users/alizaenazet/venv-metal/lib/python3.9/site-packages/urllib3/__init__.py:35: NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+, currently the &lt;span class="s1"&gt;'ssl'&lt;/span&gt; module is compiled with &lt;span class="s1"&gt;'LibreSSL 2.8.3'&lt;/span&gt;&lt;span class="nb"&gt;.&lt;/span&gt; See: https://github.com/urllib3/urllib3/issues/3020
  warnings.warn&lt;span class="o"&gt;(&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; from tensorflow.python.client import device_lib
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; tf.debugging.set_log_device_placement&lt;span class="o"&gt;(&lt;/span&gt;True&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; 
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; print&lt;span class="o"&gt;(&lt;/span&gt;device_lib.list_local_devices&lt;span class="o"&gt;())&lt;/span&gt;
2025-04-21 01:06:40.831511: I metal_plugin/src/device/metal_device.cc:1154] Metal device &lt;span class="nb"&gt;set &lt;/span&gt;to: Apple M4 Pro
2025-04-21 01:06:40.831559: I metal_plugin/src/device/metal_device.cc:296] systemMemory: 24.00 GB
2025-04-21 01:06:40.831579: I metal_plugin/src/device/metal_device.cc:313] maxCacheSize: 8.00 GB
WARNING: All log messages before absl::InitializeLog&lt;span class="o"&gt;()&lt;/span&gt; is called are written to STDERR
I0000 00:00:1745172400.831606 9217703 pluggable_device_factory.cc:305] Could not identify NUMA node of platform GPU ID 0, defaulting to 0. Your kernel may not have been built with NUMA support.
I0000 00:00:1745172400.831643 9217703 pluggable_device_factory.cc:271] Created TensorFlow device &lt;span class="o"&gt;(&lt;/span&gt;/device:GPU:0 with 0 MB memory&lt;span class="o"&gt;)&lt;/span&gt; -&amp;gt; physical PluggableDevice &lt;span class="o"&gt;(&lt;/span&gt;device: 0, name: METAL, pci bus &lt;span class="nb"&gt;id&lt;/span&gt;: &amp;lt;undefined&amp;gt;&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="o"&gt;[&lt;/span&gt;name: &lt;span class="s2"&gt;"/device:CPU:0"&lt;/span&gt;
device_type: &lt;span class="s2"&gt;"CPU"&lt;/span&gt;
memory_limit: 268435456
locality &lt;span class="o"&gt;{&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;
incarnation: 685062345586209203
xla_global_id: &lt;span class="nt"&gt;-1&lt;/span&gt;
, name: &lt;span class="s2"&gt;"/device:GPU:0"&lt;/span&gt;
device_type: &lt;span class="s2"&gt;"GPU"&lt;/span&gt;
locality &lt;span class="o"&gt;{&lt;/span&gt;
  bus_id: 1
&lt;span class="o"&gt;}&lt;/span&gt;
incarnation: 171648293091322613
physical_device_desc: &lt;span class="s2"&gt;"device: 0, name: METAL, pci bus id: &amp;lt;undefined&amp;gt;"&lt;/span&gt;
xla_global_id: &lt;span class="nt"&gt;-1&lt;/span&gt;
&lt;span class="o"&gt;]&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; 
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; print&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"Number GPUs Available: "&lt;/span&gt;,
...       len&lt;span class="o"&gt;(&lt;/span&gt;tf.config.experimental.list_physical_devices&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'GPU'&lt;/span&gt;&lt;span class="o"&gt;)))&lt;/span&gt;
Number GPUs Available:  1
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;pada bagian ini menunjukan gpu &lt;code&gt;metal&lt;/code&gt; telah terdeteksi&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;physical_device_desc: &lt;span class="s2"&gt;"device: 0, name: METAL, pci bus id: &amp;lt;undefined&amp;gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;Number GPUs Available:  1
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;menunjukan bahwa 1 gpu telah siap digunakan.&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  aktivasi gpu
&lt;/h3&gt;

&lt;p&gt;untuk melakukan aktivasi pada terminal terdapat 2 kondisi berikut&lt;/p&gt;

&lt;h4&gt;
  
  
  Awal mulai project di-inisiasi
&lt;/h4&gt;

&lt;p&gt;Pada awal seperti &lt;strong&gt;Hari pertama / proyek baru&lt;/strong&gt; anda dapat lakukan aktivasi pada terminal anda dengan command berikut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;python &lt;span class="nt"&gt;-m&lt;/span&gt; venv ~/venv-metal
&lt;span class="nb"&gt;source&lt;/span&gt; ~/venv-metal/bin/activate
pip &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-U&lt;/span&gt; tensorflow tensorflow-metal ...
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;lakukan sekali saja pada project anda melalui terminal.&lt;/em&gt;&lt;br&gt;
 Contoh pada direktori anda &lt;code&gt;/belajar-cnn/proyek-pertama&lt;/code&gt; dimana &lt;code&gt;proyek-pertama&lt;/code&gt; tempat anda mengerjakan anda dan itu adalah direktori pertama kali dibuat maka anda dapat melakukan command diatas.&lt;/p&gt;
&lt;h4&gt;
  
  
  Jika telah dilakukan inisiasi
&lt;/h4&gt;

&lt;p&gt;Jika anda telah melakukan pada command sebelumnya maka setiap kali anda memulai pada terminal baru anda cukup melakukan dengan command berikut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;source&lt;/span&gt; ~/venv-metal/bin/activate
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;seharusnya sekarang terminal anda telah didalam &lt;code&gt;env&lt;/code&gt; &lt;code&gt;venv-metal&lt;/code&gt; seperti berikut :&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzry51zgo0n0f6v24w53p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzry51zgo0n0f6v24w53p.png" alt="Image description" width="800" height="109"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Jika anda menggunakan pengerjaan dengan kernel &lt;strong&gt;Jupyter&lt;/strong&gt; pada file &lt;code&gt;.ipynb&lt;/code&gt; dapat mengikuti tahapan selanjutnya.&lt;/p&gt;


&lt;h4&gt;
  
  
  Menggunakan kernel jupyter
&lt;/h4&gt;

&lt;p&gt;Aktifkan env Anda lebih dulu:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;source&lt;/span&gt; ~/venv-metal/bin/activate
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Install ipykernel (sekali saja per env) alias setiap kali anda menginisiasi project anda:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pip &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;--upgrade&lt;/span&gt; ipykernel
python &lt;span class="nt"&gt;-m&lt;/span&gt; ipykernel &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;--user&lt;/span&gt; &lt;span class="nt"&gt;--name&lt;/span&gt; venv-metal &lt;span class="se"&gt;\&lt;/span&gt;
        &lt;span class="nt"&gt;--display-name&lt;/span&gt; &lt;span class="s2"&gt;"Python (TF‑Metal)"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;anda dapat mengubah display name "Python (TF‑Metal)"&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;jika anda tidak mendapati masalah maka seharusnya pada akhir output terminal anda kurang lebih seperti berikut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;#... output sebelumnya&lt;/span&gt;
.2 traitlets-5.14.3 wcwidth-0.2.13
Installed kernelspec venv-metal &lt;span class="k"&gt;in&lt;/span&gt; /Users/alizaenazet/Library/Jupyter/kernels/venv-metal
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;maka anda siap menggunakan pada jupyter notebook anda pada langkah terakhir selanjutnya&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Buka Jupyter dari dalam env atau pilih kernel secara manual&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;jika anda menggunakan CLI atau jupyter lab anda dapat gunakan cara berikut :&lt;/p&gt;

&lt;p&gt;Tetap di env, jalankan:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;jupyter notebook          &lt;span class="c"&gt;# atau  jupyter lab&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Jika anda menggunakan &lt;strong&gt;Cara 2 (VS Code, PyCharm, atau JupyterHub)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Buka notebook.&lt;/li&gt;
&lt;li&gt;Klik nama kernel di kanan‑atas → pilih &lt;strong&gt;“Python (TF‑Metal)”&lt;/strong&gt; (nama yang Anda set pada &lt;code&gt;--display-name&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft90goa793s930qmy2ror.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft90goa793s930qmy2ror.png" alt="Image description" width="800" height="139"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;tampilan pada vscode&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;anda dapat mulai mengecek terlebih dahulu pada awal code file &lt;code&gt;.ipynb&lt;/code&gt; anda dengan code berikut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;tensorflow&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;tf&lt;/span&gt;

&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="n"&gt;tensorflow.python.client&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;device_lib&lt;/span&gt;
&lt;span class="n"&gt;tf&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;debugging&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;set_log_device_placement&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="bp"&gt;True&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;device_lib&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;list_local_devices&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt;
&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Number GPUs Available: &lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="nf"&gt;len&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tf&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;config&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;experimental&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;list_physical_devices&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="s"&gt;GPU&lt;/span&gt;&lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)))&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;anda dapat melihat output GPU yang terdeteksi.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp7qt8so4lr96uzo96l4d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp7qt8so4lr96uzo96l4d.png" alt="Image description" width="800" height="468"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>tensorflow</category>
      <category>macos</category>
      <category>applesilicon</category>
      <category>appletfmetal</category>
    </item>
    <item>
      <title>Salah reminder Apple Shortcuts in Bahasa Indonesia</title>
      <dc:creator>ali zaenal</dc:creator>
      <pubDate>Thu, 20 Jun 2024 04:10:20 +0000</pubDate>
      <link>https://forem.com/azet/salah-reminder-in-bahasa-indonesia-1036</link>
      <guid>https://forem.com/azet/salah-reminder-in-bahasa-indonesia-1036</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fme56hcqyctloy5csjqu5.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fme56hcqyctloy5csjqu5.gif" alt="ezgif-4-693993f0ff" width="1024" height="1024"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Shortcut link :&lt;/strong&gt; &lt;a href="https://www.icloud.com/shortcuts/faad766c51f448c4888239b07401188d" rel="noopener noreferrer"&gt;https://www.icloud.com/shortcuts/faad766c51f448c4888239b07401188d&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Daftar isi :
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://gist.github.com/alizaenazet/d3afe9529d1eba8968d4b6bbc9b22002#cara-kerja-" rel="noopener noreferrer"&gt;Cara kerja&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://gist.github.com/alizaenazet/d3afe9529d1eba8968d4b6bbc9b22002#cara-menggunakan" rel="noopener noreferrer"&gt;Cara menggunakan&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://gist.github.com/alizaenazet/d3afe9529d1eba8968d4b6bbc9b22002#automasi-untuk-setiap-awal-hari" rel="noopener noreferrer"&gt;Cara automasi setiap awal hari&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://gist.github.com/alizaenazet/d3afe9529d1eba8968d4b6bbc9b22002#memilih-metode-referensi-waktu-sholat" rel="noopener noreferrer"&gt;Memilih referensi acuan waktu sholat&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://gist.github.com/alizaenazet/d3afe9529d1eba8968d4b6bbc9b22002#referensi-metode-yang-anda-dapat-pilih-pada-tabel-berikut-" rel="noopener noreferrer"&gt;List Kementrian/Metode jadwal sholat&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Seringkali sebagai muslim memerlukan peringatan jam waktu datangnya sholat, sebagian besar orang-orang menggunakan aplikasi untuk meningatkan waktu sholat, yang menurut saya berlebihan sebab kita dapat melakukannya dengan kelender, ditambah lagi sebagian aplikasi memberikan peringatan dengan suara adzan yang berlebihan sehingga terkadang membuat kita keberatan saat dalam keadaan sibuk dan aplikasi tidak mengingatkan kita saat waktu sholat akan segeara datang, terkadang kita lupa melaksanakan sholat maka dari itu sebelum waktu sholat berikutnya maka seharusnya terdapat peringatan untuk bersiap-siap terlebih dahulu.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Shortcuts&lt;/em&gt; ini memang sengaja hanya saya tujukan untuk mengatur waktu sholat dalam seharian saja, sebab waktu sholat dapat berubah walaupun tidak signifikan tetapi itu perlu diperhatikan, sehingga menurut saya kita hanya perlu melakukan iterasi/pengulangan diawal hari yang mana itu juga telah termasuk fitur yang terdapat pada aplikasi &lt;strong&gt;Shortcut&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Salah reminder&lt;/code&gt; adalah &lt;strong&gt;Shortcut&lt;/strong&gt; yang dapat dijalankan aplikasi &lt;code&gt;Shortcut&lt;/code&gt; pada apple device seperti mac, ipad, ios dll.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff85da9bhtq6dkxj4tn4k.png" alt="Image description" width="152" height="150"&gt;&lt;/th&gt;
&lt;th&gt;
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwilsw369abr68cyjs1n2.png" alt="Image description" width="284" height="202"&gt;&lt;br&gt;
&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;em&gt;program shortcut&lt;/em&gt; ini memperlukan internet sebab akan meminta informasi jadwal sholat yang akurat untuk setiap harinya dalam rangka meminimalisir waktu sholat yang tidak akurat.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm95m6ho2dc191zhmmy2s.png" alt="Image description" width="358" height="530"&gt;&lt;/th&gt;
&lt;th&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxm9fhxom5j7x5gn1ttuy.jpeg" alt="Image description" width="750" height="470"&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;em&gt;Penggunaan **Shortcut&lt;/em&gt;* yang akan melakukan penjadwalan seharian dan memberikan peringatan saat waktu sholat akan tiba dan saat telah tiba*&lt;/p&gt;

&lt;h2&gt;
  
  
  Cara kerja :
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Shortcut&lt;/strong&gt; tersebut akan meminta lokasi anda lalu akan memasang jadwal sholat 5 waktu dikalender kalia dengan peringatan 30 menit sebelum waktu sholat datang dan waktu sholat telah datang. &lt;br&gt;
Saya menyarankan untuk menggunakan pada awal hari agar dapat membantu anda dalam mengetahui waktu sholat sekaligus memingatkan diri anda.&lt;/p&gt;

&lt;p&gt;Shortcut ini dapat anda kombinasikan dengan fitur &lt;em&gt;Automation&lt;/em&gt;, &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2jwm0u3q2yx1w67vv063.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2jwm0u3q2yx1w67vv063.jpeg" alt="Image description" width="750" height="618"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Cara menggunakan
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Gunakan link berikut untuk mendapatkan shortcut
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Shortcut link :&lt;/strong&gt; &lt;a href="http://www.icloud.com/shortcuts/cb5a2b226d94448f8a935225a04d98a3" rel="noopener noreferrer"&gt;www.icloud.com/shortcuts/cb5a2b226d94448f8a935225a04d98a3&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Klik pada tombol &lt;code&gt;Add Shortcut&lt;/code&gt;
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;ios device&lt;/th&gt;
&lt;th&gt;mac&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;br&gt;&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn5h87wla8rrk2wivtnlu.jpeg" alt="Image description" width="750" height="1001"&gt;
&lt;/td&gt;
&lt;td&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6763f5p481pv4p09y3rr.png" alt="Image description" width="800" height="378"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Jalankan untuk pertama kali
&lt;/h3&gt;

&lt;p&gt;Setelah &lt;strong&gt;Shortcut&lt;/strong&gt; berhasil ditambahkan maka lebih baik menjalankannya untuk pertama kali agar dapat dimintai dan sekaligus memberikan izin pada &lt;strong&gt;Shortcut&lt;/strong&gt; untuk mengakses Lokasi melalui perangkat anda, dikarenakan kebutuhan dalam menentukan waktu sholat yang lebih akurat.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;steps&lt;/th&gt;
&lt;th&gt;preview&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Berikan izin dalam mengakses lokasi terkini anda&lt;/td&gt;
&lt;td&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faqhnlxzhmqvw6v8pkn0v.jpeg" alt="Image description" width="750" height="336"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Berikan izin &lt;code&gt;Always Allow&lt;/code&gt; dalam mengakses lokasi anda agar dapat&lt;br&gt;meminta lokasi setiap kali dijalankan kembali.&lt;/td&gt;
&lt;td&gt;
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F019pvffc6e6zmys054kj.jpeg" alt="Image description" width="750" height="798"&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;strong&gt;&lt;em&gt;(Jika)&lt;/em&gt;&lt;/strong&gt; berhasil tanpa gangguan&lt;/td&gt;
&lt;td&gt;
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8ko7w8vvk19xlkxsizee.jpeg" alt="Image description" width="750" height="212"&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;strong&gt;&lt;em&gt;(Mungkin)&lt;/em&gt;&lt;/strong&gt; anda mendapati masalah seperti berikut. Jangan khawatir &lt;br&gt;hanya anda perlu sedikit tindakan &lt;br&gt;saja, ikuti langkah selanjutnya&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fklgm1yz1slm5hl9doy86.jpeg" alt="Image description" width="656" height="358"&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Klik pada icon menum yang terletak pada bagian pojok kanan atas.&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd5yms8fa18lfc23iywho.jpeg" alt="Image description" width="356" height="270"&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;klik pada icon menu &lt;em&gt;Settings&lt;/em&gt; pada bagian atas sebelah kanan&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyfpbz1fmq6hp8tnofxb2.jpeg" alt="Image description" width="750" height="493"&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;- Masuk ke menu &lt;strong&gt;Privacy&lt;/strong&gt;&lt;br&gt;- Berikan izin untuk seluruh akses yang belum.&lt;br&gt;- Klik pada tombol &lt;code&gt;Done&lt;/code&gt;&lt;br&gt;- Kini telah siap anda jalankan &lt;br&gt;kembali shortcut tersebut.&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5veyugexpdnv9mxrnakg.jpeg" alt="Image description" width="750" height="580"&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Automasi untuk setiap awal hari
&lt;/h2&gt;

&lt;p&gt;Hanya tersedia untuk &lt;strong&gt;device Ipad dan Ios&lt;/strong&gt;&lt;br&gt;
menjalankan &lt;strong&gt;Shortcut&lt;/strong&gt; tersebut secara manual setiap hari mungkin adalah ide buruk, maka dengan memberikan Automasi akan sangat membantu kita kedepannya. berikut adalah autmasi pada &lt;em&gt;Shortcut App&lt;/em&gt; saya mungkin bisa anda ikuti.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;- Buka menu &lt;em&gt;"Automation"&lt;/em&gt; &lt;br&gt;- klik pada pojok kanan atas icon menu "&lt;em&gt;Tambah&lt;/em&gt; &lt;code&gt;+&lt;/code&gt; "&lt;br&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F635mq6zqmjuls4oe9l2n.jpeg" alt="Image description" width="750" height="1334"&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;pilih opsi &lt;em&gt;Create Personal Automation&lt;/em&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fner32561epwr8bwcogzf.jpeg" alt="Image description" width="750" height="493"&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;strong&gt;pilih menu Time of day&lt;/strong&gt;, untuk menjalankan automasi &lt;br&gt;berdasarkan waktu tertentu&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ctiid0a1nwprdt5u0z3.jpeg" alt="Image description" width="750" height="142"&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;- pilih opsi &lt;em&gt;Time of Day&lt;/em&gt;&lt;br&gt;- tentukan pada jam berapa automasi akan dijalankan secara otomatis&lt;br&gt;- tekan &lt;em&gt;next&lt;/em&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnac90s8y99g0psb1laib.jpeg" alt="Image description" width="750" height="830"&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;- pilih menu &lt;em&gt;Add Action&lt;/em&gt; untuk memilih tindakan yang akan dijalankan&lt;br&gt;- tekan next&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkx8eqb2pbsdp2uxfyjno.jpeg" alt="Image description" width="750" height="424"&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;pilh opsi &lt;em&gt;Run Shortcut&lt;/em&gt;, dimana akan menjalankan sebuah &lt;strong&gt;Shortcut&lt;/strong&gt; &lt;br&gt;pada automasi dijalankan&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6yipc4801dijrmv6tkrk.jpeg" alt="Image description" width="750" height="565"&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;sekarang anda perlu menunjukan sebuah &lt;strong&gt;Shortcut&lt;/strong&gt; yang akan&lt;br&gt;dijalankan&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuv2zbpe8tlinrnwuz37u.jpeg" alt="Image description" width="750" height="336"&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;pilih &lt;strong&gt;Salah reminder shortcut&lt;/strong&gt; dan klik menu &lt;em&gt;Next&lt;/em&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F253r2k75kz3ox1ny828j.jpeg" alt="Image description" width="750" height="301"&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;matikan opsi &lt;em&gt;Ask Before running&lt;/em&gt; untuk memastikan automasi berjalan&lt;br&gt;sendirinya tanpa meminta konfirmasi&lt;br&gt;kepada anda dan selesaikan tahapan&lt;br&gt;dengan menekan menu &lt;em&gt;Done&lt;/em&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgg2kubpbx99n8ohlrjmp.jpeg" alt="Image description" width="750" height="831"&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;sekarang Shortcut anda akan berjalan setiap hari pada perangkat&lt;br&gt;anda untuk mengatur jadwal sholat&lt;br&gt;sehari penuh.&lt;/td&gt;
&lt;td&gt;
&lt;br&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj740rkz1tkrwftoeipnf.jpeg" alt="Image description" width="750" height="345"&gt;&lt;br&gt;&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Memilih metode referensi waktu sholat
&lt;/h2&gt;

&lt;p&gt;waktu tiba sholat mungkin perlu anda sesuaikan dengan kebutuhan anda, hal ini memungkinkan anda dalam mengatur lembaga yang dapat anda sesuaikan. &lt;br&gt;
secara &lt;em&gt;default&lt;/em&gt; &lt;strong&gt;Shortcut&lt;/strong&gt; menggunakan mengacu pada &lt;em&gt;KEMENAG&lt;/em&gt; dengan kode &lt;strong&gt;20&lt;/strong&gt;.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4d5mzp8r0m96p1ym0uzy.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4d5mzp8r0m96p1ym0uzy.jpeg" alt="Image description" width="750" height="450"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;&lt;code&gt;20&lt;/code&gt; Berartikan menggunakan metode jadwal sholat **KEMENAG&lt;/em&gt;**&lt;/p&gt;

&lt;p&gt;anda dapat mengubannya dengan mengikuti cara berikut :&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;steps&lt;/th&gt;
&lt;th&gt;preview&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Klik pada icon menum yang terletak pada bagian pojok kanan atas.&lt;/td&gt;
&lt;td&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd5yms8fa18lfc23iywho.jpeg" alt="Image description" width="356" height="270"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;anda sekarang dapat melihat seluruh isi dibalik shortcut tersebut, &lt;br&gt;anda dapat merubah nilai pada &lt;strong&gt;Note&lt;/strong&gt; pada bagian atas dengan kode yang anda&lt;br&gt;inginkan berdasarkan kebutuhan anda.&lt;br&gt;[[Salah reminder#referensi metode yang anda dapat pilih pada tabel berikut]]&lt;/td&gt;
&lt;td&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4d5mzp8r0m96p1ym0uzy.jpeg" alt="Image description" width="750" height="450"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  referensi metode yang anda dapat pilih pada tabel berikut :
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table id="T_7ecc6"&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th&gt; &lt;/th&gt;
      &lt;th id="T_7ecc6_level0_col0"&gt;NAME&lt;/th&gt;
      &lt;th id="T_7ecc6_level0_col1"&gt;CODE&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row0"&gt;0&lt;/th&gt;
      &lt;td id="T_7ecc6_row0_col0"&gt;MWL-Muslim World League &lt;/td&gt;
      &lt;td id="T_7ecc6_row0_col1"&gt;3&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row1"&gt;1&lt;/th&gt;
      &lt;td id="T_7ecc6_row1_col0"&gt;ISNA-Islamic Society of North America (ISNA) &lt;/td&gt;
      &lt;td id="T_7ecc6_row1_col1"&gt;2&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row2"&gt;2&lt;/th&gt;
      &lt;td id="T_7ecc6_row2_col0"&gt;EGYPT-Egyptian General Authority of Survey &lt;/td&gt;
      &lt;td id="T_7ecc6_row2_col1"&gt;5&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row3"&gt;3&lt;/th&gt;
      &lt;td id="T_7ecc6_row3_col0"&gt;MAKKAH-Umm Al-Qura University, Makkah &lt;/td&gt;
      &lt;td id="T_7ecc6_row3_col1"&gt;4&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row4"&gt;4&lt;/th&gt;
      &lt;td id="T_7ecc6_row4_col0"&gt;KARACHI-University of Islamic Sciences, Karachi &lt;/td&gt;
      &lt;td id="T_7ecc6_row4_col1"&gt;1&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row5"&gt;5&lt;/th&gt;
      &lt;td id="T_7ecc6_row5_col0"&gt;TEHRAN-Institute of Geophysics, University of Tehran &lt;/td&gt;
      &lt;td id="T_7ecc6_row5_col1"&gt;7&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row6"&gt;6&lt;/th&gt;
      &lt;td id="T_7ecc6_row6_col0"&gt;JAFARI-Shia Ithna-Ashari, Leva Institute, Qum &lt;/td&gt;
      &lt;td id="T_7ecc6_row6_col1"&gt;0&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row7"&gt;7&lt;/th&gt;
      &lt;td id="T_7ecc6_row7_col0"&gt;GULF-Gulf Region &lt;/td&gt;
      &lt;td id="T_7ecc6_row7_col1"&gt;8&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row8"&gt;8&lt;/th&gt;
      &lt;td id="T_7ecc6_row8_col0"&gt;KUWAIT-Kuwait &lt;/td&gt;
      &lt;td id="T_7ecc6_row8_col1"&gt;9&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row9"&gt;9&lt;/th&gt;
      &lt;td id="T_7ecc6_row9_col0"&gt;QATAR-Qatar &lt;/td&gt;
      &lt;td id="T_7ecc6_row9_col1"&gt;10&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row10"&gt;10&lt;/th&gt;
      &lt;td id="T_7ecc6_row10_col0"&gt;SINGAPORE-Majlis Ugama Islam Singapura, Singapore &lt;/td&gt;
      &lt;td id="T_7ecc6_row10_col1"&gt;11&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row11"&gt;11&lt;/th&gt;
      &lt;td id="T_7ecc6_row11_col0"&gt;FRANCE-Union Organization Islamic de France &lt;/td&gt;
      &lt;td id="T_7ecc6_row11_col1"&gt;12&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row12"&gt;12&lt;/th&gt;
      &lt;td id="T_7ecc6_row12_col0"&gt;TURKEY-Diyanet İşleri Başkanlığı, Turkey (experimental) &lt;/td&gt;
      &lt;td id="T_7ecc6_row12_col1"&gt;13&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row13"&gt;13&lt;/th&gt;
      &lt;td id="T_7ecc6_row13_col0"&gt;RUSSIA-Spiritual Administration of Muslims of Russia &lt;/td&gt;
      &lt;td id="T_7ecc6_row13_col1"&gt;14&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row14"&gt;14&lt;/th&gt;
      &lt;td id="T_7ecc6_row14_col0"&gt;MOONSIGHTING-Moonsighting Committee Worldwide (Moonsighting.com) &lt;/td&gt;
      &lt;td id="T_7ecc6_row14_col1"&gt;15&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row15"&gt;15&lt;/th&gt;
      &lt;td id="T_7ecc6_row15_col0"&gt;DUBAI-Dubai (experimental) &lt;/td&gt;
      &lt;td id="T_7ecc6_row15_col1"&gt;16&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row16"&gt;16&lt;/th&gt;
      &lt;td id="T_7ecc6_row16_col0"&gt;JAKIM-Jabatan Kemajuan Islam Malaysia (JAKIM) &lt;/td&gt;
      &lt;td id="T_7ecc6_row16_col1"&gt;17&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row17"&gt;17&lt;/th&gt;
      &lt;td id="T_7ecc6_row17_col0"&gt;TUNISIA-Tunisia &lt;/td&gt;
      &lt;td id="T_7ecc6_row17_col1"&gt;18&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row18"&gt;18&lt;/th&gt;
      &lt;td id="T_7ecc6_row18_col0"&gt;ALGERIA-Algeria &lt;/td&gt;
      &lt;td id="T_7ecc6_row18_col1"&gt;19&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row19"&gt;19&lt;/th&gt;
      &lt;td id="T_7ecc6_row19_col0"&gt;KEMENAG-Kementerian Agama Republik Indonesia &lt;/td&gt;
      &lt;td id="T_7ecc6_row19_col1"&gt;20&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row20"&gt;20&lt;/th&gt;
      &lt;td id="T_7ecc6_row20_col0"&gt;MOROCCO-Morocco &lt;/td&gt;
      &lt;td id="T_7ecc6_row20_col1"&gt;21&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th id="T_7ecc6_level0_row21"&gt;21&lt;/th&gt;
      &lt;td id="T_7ecc6_row21_col0"&gt;PORTUGAL-Comunidade Islamica de Lisboa &lt;/td&gt;
      &lt;td id="T_7ecc6_row21_col1"&gt;22&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
      <category>ios</category>
      <category>appleshortcuts</category>
    </item>
    <item>
      <title>Deploy Laravel di-GCP dengan Nginx Ubuntu: quick start</title>
      <dc:creator>ali zaenal</dc:creator>
      <pubDate>Fri, 22 Dec 2023 03:37:37 +0000</pubDate>
      <link>https://forem.com/azet/deploy-laravel-di-gcp-dengan-nginx-ubuntu-quick-start-1lb7</link>
      <guid>https://forem.com/azet/deploy-laravel-di-gcp-dengan-nginx-ubuntu-quick-start-1lb7</guid>
      <description>&lt;p&gt;Helloo👋 , Pada artikel kali ini, akan membahas cara deploy aplikasi Laravel pada Google Cloud Platform (GCP) Compute Engine dengan MySQL dan VPC. Artikel ini diharap untuk dapat membantu untuk mempelajari cara &lt;em&gt;deploy&lt;/em&gt; aplikasi Laravel pada &lt;em&gt;cloud service&lt;/em&gt;, khususnya di GCP.&lt;/p&gt;

&lt;p&gt;Kita akan mempelajari beberapa hal :&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Cloud VM &amp;amp; Cloud computing&lt;/li&gt;
&lt;li&gt;VPC&lt;/li&gt;
&lt;li&gt;Cloud Database Instance&lt;/li&gt;
&lt;li&gt;Serverless architecture&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  ketentuan awal :
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Project laravel versi 10 ( perlu sedikit penyesuaian jika menggunakan framework/library tambahan seperti filament/intertia )&lt;/li&gt;
&lt;li&gt;Menggunakan github repository&lt;/li&gt;
&lt;li&gt;Memiliki akun aktif &lt;a href="https://cloud.google.com/?hl=id" rel="noopener noreferrer"&gt;GCP&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Register GCP Account
&lt;/h2&gt;

&lt;p&gt;untuk pendaftaran account GCP relatif mudah, anda dapat login menggunakan akun google dan ikuti &lt;a href="https://cloud.google.com/free/?utm_source=google&amp;amp;utm_medium=cpc&amp;amp;utm_campaign=japac-ID-all-en-dr-BKWS-all-core-trial-PHR-dr-1605216&amp;amp;utm_content=text-ad-none-none-DEV_c-CRE_664919860042-ADGP_Hybrid+%7C+BKWS+-+BRO+%7C+Txt+~+GCP_General_core+brand_main-KWID_43700077390372781-kwd-4406040420&amp;amp;userloc_1007715-network_g&amp;amp;utm_term=KW_google+cloud&amp;amp;gad_source=1&amp;amp;gclid=CjwKCAiAhJWsBhAaEiwAmrNyq1J3lKSmWe_Di1je3uGOa_7mvHx68gg0DmMhI9flPvxKoTG9nstk1BoC1ekQAvD_BwE&amp;amp;gclsrc=aw.ds&amp;amp;hl=id" rel="noopener noreferrer"&gt;alur pendafaran pada website&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  setup database
&lt;/h2&gt;

&lt;p&gt;jika kalian menggunakan &lt;em&gt;database&lt;/em&gt; terlebih diantaranya: mysql, postgreSql dan relational db lainnya maka buruntung sekali, sebab kita dapat membuat server &lt;em&gt;database&lt;/em&gt; kita sendiri.&lt;/p&gt;

&lt;p&gt;untuk memulai penggunaan database, kita menggunakan product dari &lt;a href="https://cloud.google.com/sql?hl=en" rel="noopener noreferrer"&gt;GCP CLOUD SQL&lt;/a&gt;agar lebih mudah ditemukan gunakan search bar dengan kata kunci "SQL".&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--7jsWqjjw--%2Ff_auto%2Cq_auto%2Fv1703214728%2Fugc%2Fcontent_5957380a-6419-4d79-b2bc-406feb6b7e14" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--7jsWqjjw--%2Ff_auto%2Cq_auto%2Fv1703214728%2Fugc%2Fcontent_5957380a-6419-4d79-b2bc-406feb6b7e14" alt="Screenshot 2023-12-22 at 06.51.09" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;klik &lt;em&gt;create instance&lt;/em&gt; dan pilih tipe &lt;em&gt;database&lt;/em&gt; yang kalian inginkan, pada kasus ini saya akan menggunakan &lt;em&gt;mysql&lt;/em&gt; .&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--72gM3Fml--%2Ff_auto%2Cq_auto%2Fv1703214823%2Fugc%2Fcontent_1827da09-0a6c-4b14-bf8b-b770a85c53e5" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--72gM3Fml--%2Ff_auto%2Cq_auto%2Fv1703214823%2Fugc%2Fcontent_1827da09-0a6c-4b14-bf8b-b770a85c53e5" alt="Screenshot 2023-12-22 at 06.54.14" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;konfigurasi yang saya gunakan sebagai berikut :&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--iH_06_Om--%2Ff_auto%2Cq_auto%2Fv1703214936%2Fugc%2Fcontent_5f7825e5-1355-45ef-8539-4ff3e1edd87d" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--iH_06_Om--%2Ff_auto%2Cq_auto%2Fv1703214936%2Fugc%2Fcontent_5f7825e5-1355-45ef-8539-4ff3e1edd87d" alt="screencapture-console-cloud-google-sql-instances-create-engine-MySQL-2023-12-22-06_58_32" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;konfigurasi pada instance tersebut saya peruntukan untuk study case, dengan tujuan menghindari biaya berlebih&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;proses aktivasi &lt;em&gt;database&lt;/em&gt; dapat cenderung lama, berkisar 30-180 detik, bahkan lebih. &lt;/p&gt;

&lt;p&gt;setelah instance database telah berhasil dibuat dan diaktifkan, maka akan terlihat pada &lt;em&gt;dashboard&lt;/em&gt; tipe database kalian beserta keterangannya.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--1Bc0gPM_--%2Ff_auto%2Cq_auto%2Fv1703215007%2Fugc%2Fcontent_5b56d069-d754-4ad4-bebf-b9958c4d5061" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--1Bc0gPM_--%2Ff_auto%2Cq_auto%2Fv1703215007%2Fugc%2Fcontent_5b56d069-d754-4ad4-bebf-b9958c4d5061" alt="Screenshot 2023-12-22 at 07.04.41" width="800" height="400"&gt;&lt;/a&gt;&lt;br&gt;
yang perlu kita perhatikan adalah &lt;em&gt;public IP address&lt;/em&gt;, sebab itu adalah host yang akan kita gunakan untuk terhubung dengan database dan juga bisa kita lakukan dengan database client favorit masing-masing, seperti &lt;em&gt;phpmyadmin, dbaver, DLL&lt;/em&gt;. &lt;/p&gt;

&lt;p&gt;secara &lt;em&gt;default&lt;/em&gt; pengaturan autentikasi akan berjalan pada port  &lt;code&gt;3306&lt;/code&gt; dan memiliki &lt;em&gt;username&lt;/em&gt; &lt;code&gt;root&lt;/code&gt;, sisanya sesuai dengan konfigurasi yang kita sesuaikan saat membuat instance. Dengan demikian database telah siap digunakan.&lt;/p&gt;
&lt;h2&gt;
  
  
  setup Compute engine instance
&lt;/h2&gt;

&lt;p&gt;agar kita dapat menjalankan aplikasi, maka kita butuh server yang siap sedia menangani permintaan pada aplikasi kita, maka dari itu kita akan memulai membuat sebuah instance &lt;em&gt;Cloud VM&lt;/em&gt; dari GCP yaitu &lt;a href="https://cloud.google.com/compute?hl=id" rel="noopener noreferrer"&gt;&lt;em&gt;Compute engine&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;
  
  
  membuat sebuah instance baru
&lt;/h3&gt;

&lt;p&gt;masuk ke &lt;em&gt;dashboard project&lt;/em&gt; dan gunakan &lt;em&gt;search bar&lt;/em&gt; dengan kata kunci "&lt;em&gt;Compute engine&lt;/em&gt;".&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--hgRw5LjW--%2Ff_auto%2Cq_auto%2Fv1703215067%2Fugc%2Fcontent_482a3f44-aa84-4dad-ad48-26a50cc52a3c" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--hgRw5LjW--%2Ff_auto%2Cq_auto%2Fv1703215067%2Fugc%2Fcontent_482a3f44-aa84-4dad-ad48-26a50cc52a3c" alt="Screenshot 2023-12-22 at 07.13.33 1" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;buat instance baru dengan klik menu "&lt;em&gt;Create instance&lt;/em&gt;" pada bagian atas &lt;em&gt;dashboard&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--kER71b0G--%2Ff_auto%2Cq_auto%2Fv1703215247%2Fugc%2Fcontent_90186463-fbb9-4cae-922d-4c7af004232c" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--kER71b0G--%2Ff_auto%2Cq_auto%2Fv1703215247%2Fugc%2Fcontent_90186463-fbb9-4cae-922d-4c7af004232c" alt="Screenshot 2023-12-22 at 07.15.28" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;berikut konfigurasi sederhana untuk &lt;em&gt;study case saat ini&lt;/em&gt; :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--8HWKUG1P--%2Ff_auto%2Cq_auto%2Fv1703215298%2Fugc%2Fcontent_ae44d955-035f-418c-9db9-c77d3594b089" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--8HWKUG1P--%2Ff_auto%2Cq_auto%2Fv1703215298%2Fugc%2Fcontent_ae44d955-035f-418c-9db9-c77d3594b089" alt="screencapture-console-cloud-google-compute-instancesAdd-2023-12-22-02_42_35 copy" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Memilih Boot Disk
&lt;/h4&gt;

&lt;p&gt;pada menu boot disk saya melakukan beberapa perubahan sebagai berikut : &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--okyNgVaf--%2Ff_auto%2Cq_auto%2Fv1703215326%2Fugc%2Fcontent_00991b2c-137e-4720-b25d-d284b68c9a34" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--okyNgVaf--%2Ff_auto%2Cq_auto%2Fv1703215326%2Fugc%2Fcontent_00991b2c-137e-4720-b25d-d284b68c9a34" alt="Screenshot 2023-12-22 at 07.23.59" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;konfigurasi tersebut sangat cocok untuk kita yang pertamakali mencoba sekaligus belajar sehingga tetap dapat menghemat tagihan saat proses belajar&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;saya menggunakan OS &lt;em&gt;Ubuntu 22.04 LTS&lt;/em&gt; dan jika instance dihapus maka begitu sekaligus dengan &lt;em&gt;Boot disk&lt;/em&gt;, untuk menghindari tagihan diluar prediksi kelak.&lt;/p&gt;

&lt;p&gt;saya melakukan beberapa pengaturan dasar sebagai berikut :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--vIxaH2N7--%2Ff_auto%2Cq_auto%2Fv1703215363%2Fugc%2Fcontent_1a0f283a-2452-4ffc-bc51-401bb9aa5da2" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--vIxaH2N7--%2Ff_auto%2Cq_auto%2Fv1703215363%2Fugc%2Fcontent_1a0f283a-2452-4ffc-bc51-401bb9aa5da2" alt="screencapture-console-cloud-google-compute-instancesAdd-2023-12-22-02_42_35" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;jika dirasa telah tepat dan benar maka klik pada opsi &lt;em&gt;CREATE&lt;/em&gt;, pada bagian pojok kanan bawah.&lt;/p&gt;
&lt;h3&gt;
  
  
  Reservasi IP address External
&lt;/h3&gt;

&lt;p&gt;setelah berhasil membuat sebuah instance maka kita dapat melihat informasi sederhana akan instance tersebut salah satunya adalah &lt;a href="https://cloud.google.com/compute/docs/ip-addresses?hl=id#externaladdresses" rel="noopener noreferrer"&gt;&lt;em&gt;External ip address&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;tujuan kita adalah ketika sebuah &lt;em&gt;instance&lt;/em&gt; dilakukan restart atau dinyalakan kembali dia akan tetap memiliki &lt;em&gt;IP Address&lt;/em&gt; tetap, sehingga kita tidak perlu membeli &lt;em&gt;domain&lt;/em&gt; untuk penggunaan jangka pendek dan pembelajaran.&lt;/p&gt;

&lt;p&gt;ada dua hal yang perlu kita akan terapkan, sebagai berikut : &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://www.techtarget.com/whatis/definition/IP-address-Internet-Protocol-Address" rel="noopener noreferrer"&gt;IP Address&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.cloudflare.com/learning/cloud/what-is-a-virtual-private-cloud/" rel="noopener noreferrer"&gt;VPC&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;maka kita akan memulai dengan melakukan reservasi pada &lt;em&gt;instance&lt;/em&gt; kita terlebih dahulu menggunakan &lt;a href="https://cloud.google.com/vpc?hl=en" rel="noopener noreferrer"&gt;layanan &lt;em&gt;VPC&lt;/em&gt; yang telah disediakan oleh &lt;em&gt;GCP&lt;/em&gt;&lt;/a&gt;. &lt;/p&gt;
&lt;h4&gt;
  
  
  Memasang reserved IP Address pada &lt;em&gt;Compute instance&lt;/em&gt;
&lt;/h4&gt;

&lt;p&gt;untuk mempermudah pencarian akan produk, seperti biasa gunakan &lt;em&gt;Search bar&lt;/em&gt; pada bagian atas &lt;em&gt;dashboard&lt;/em&gt; dengan kata kunci &lt;em&gt;Vpc networks&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--Xs7By4Mb--%2Ff_auto%2Cq_auto%2Fv1703215387%2Fugc%2Fcontent_0d3ad0f7-8473-4c2a-a09a-c8cefdd56bfc" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--Xs7By4Mb--%2Ff_auto%2Cq_auto%2Fv1703215387%2Fugc%2Fcontent_0d3ad0f7-8473-4c2a-a09a-c8cefdd56bfc" alt="Screenshot 2023-12-22 at 07.37.32" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;pada &lt;em&gt;dashboard&lt;/em&gt; pilih menu &lt;em&gt;Reserve external static IP address&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--VlYlf9bw--%2Ff_auto%2Cq_auto%2Fv1703215442%2Fugc%2Fcontent_48411fd7-eda1-4d93-a642-f6dcf4ed9824" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--VlYlf9bw--%2Ff_auto%2Cq_auto%2Fv1703215442%2Fugc%2Fcontent_48411fd7-eda1-4d93-a642-f6dcf4ed9824" alt="Screenshot 2023-12-22 at 06.05.33" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;berikut adalah konfigurasi yang saya gunakan dan disesuaikan untuk pada salah satu instance dari &lt;em&gt;Compute engine&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--k3BS51wm--%2Ff_auto%2Cq_auto%2Fv1703215510%2Fugc%2Fcontent_0a1ef8f0-3b7f-4459-875e-65f1fa8f2e99" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--k3BS51wm--%2Ff_auto%2Cq_auto%2Fv1703215510%2Fugc%2Fcontent_0a1ef8f0-3b7f-4459-875e-65f1fa8f2e99" alt="screencapture-console-cloud-google-networking-addresses-add-2023-12-22-06_10_01" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;berikut adalah penjelasan setiap nomor :&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Nama VPC pada umumnya menjelaskan akan vpc dan product akan dihubungkan.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Region&lt;/em&gt; adalah tempat dimana instance dari &lt;em&gt;Compute engine&lt;/em&gt; yang ingin dituju dijalankan.&lt;/li&gt;
&lt;li&gt;Nama instance yang ingin menggunakan &lt;em&gt;VPC&lt;/em&gt;
pilih opsi &lt;em&gt;Reserve&lt;/em&gt; jika telah dirasa benar dan sesuai&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;setelah berhasil dilakukannya reservasi maka akan menyadari bahwasanya, External IP pada instance kita cenderung lebih rumit ketimbang sebelumnya seperti berikut : &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--OsizVkyZ--%2Ff_auto%2Cq_auto%2Fv1703215551%2Fugc%2Fcontent_885af6ca-bf52-40b1-b8f0-689f1c0d60e3" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--OsizVkyZ--%2Ff_auto%2Cq_auto%2Fv1703215551%2Fugc%2Fcontent_885af6ca-bf52-40b1-b8f0-689f1c0d60e3" alt="Screenshot 2023-12-22 at 06.12.03" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;setelah langkah-langkah sebelumnya selesai terlakasana maka kita akan mulai melakukan &lt;em&gt;setup&lt;/em&gt; pada &lt;em&gt;Web server&lt;/em&gt; dan &lt;em&gt;aplikasi web&lt;/em&gt;.&lt;/p&gt;
&lt;h2&gt;
  
  
  Setup Compute engine Instance with Nginx
&lt;/h2&gt;

&lt;p&gt;sebelum menuju lebih dalam, pastikan aplikasi laravel telah berjalan dengan baik pada &lt;em&gt;local environment&lt;/em&gt; kita (termasuk pasca dilakukan clone pada repository). &lt;/p&gt;
&lt;h2&gt;
  
  
  install nginx
&lt;/h2&gt;

&lt;p&gt;Agar aplikasi laravel kita dapat dijalankan dengan optimal dan  aman maka kita akan menggunakan web server(HTTP), untuk web server yang akan kita gunakan adalah &lt;a href="https://www.nginx.com/resources/glossary/nginx/" rel="noopener noreferrer"&gt;&lt;em&gt;Nginx&lt;/em&gt;&lt;/a&gt; pemeilihan akan menggunakan pada &lt;em&gt;Nginx&lt;/em&gt; salah satunya adalah kemudahan konfigurasi dan bersifat &lt;em&gt;open source&lt;/em&gt; alias gratis. &lt;/p&gt;

&lt;p&gt;untuk memulai melakukan instalasi pada &lt;em&gt;webserver&lt;/em&gt; dan aplikasi laravel maka kita akan mengakses &lt;a href="https://www.vmware.com/topics/glossary/content/virtual-machine.html" rel="noopener noreferrer"&gt;&lt;em&gt;VM&lt;/em&gt;&lt;/a&gt; melalaui &lt;em&gt;Shell/Cli&lt;/em&gt; anda dapat menggunakan &lt;em&gt;SSH client&lt;/em&gt;  favorit kalian ataupun &lt;em&gt;Cloud shell&lt;/em&gt; yang telah disediakan oleh &lt;em&gt;GCP&lt;/em&gt;. Pada kali ini saya akan menggunakan &lt;em&gt;Cloud shell&lt;/em&gt; agar lebih ringkas dan cepat, berikut langkah-langkahnya : &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;pergi ke dashboard &lt;em&gt;Compute engine&lt;/em&gt; &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--sJhh06S1--%2Ff_auto%2Cq_auto%2Fv1703215582%2Fugc%2Fcontent_4e925dc4-f026-48be-9e7b-bbda0dcafec1" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--sJhh06S1--%2Ff_auto%2Cq_auto%2Fv1703215582%2Fugc%2Fcontent_4e925dc4-f026-48be-9e7b-bbda0dcafec1" alt="Screenshot 2023-12-22 at 08.01.08" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;klik icon opsi disamping menu &lt;em&gt;SSH&lt;/em&gt; pada instance yang ingin kalian gunakan dan pilih menu &lt;em&gt;View gcloud command&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--SqfNH8NQ--%2Ff_auto%2Cq_auto%2Fv1703215607%2Fugc%2Fcontent_9c07306a-7286-4e7b-a8b6-b75850133ef9" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--SqfNH8NQ--%2Ff_auto%2Cq_auto%2Fv1703215607%2Fugc%2Fcontent_9c07306a-7286-4e7b-a8b6-b75850133ef9" alt="Screenshot 2023-12-22 at 08.01.25" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;klik pada &lt;em&gt;Copy to clipboard&lt;/em&gt; lalu &lt;em&gt;Run in Cloud shell&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--CBXa-8hc--%2Ff_auto%2Cq_auto%2Fv1703215635%2Fugc%2Fcontent_7ac80fa7-9399-4303-8910-9575b82375a5" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--CBXa-8hc--%2Ff_auto%2Cq_auto%2Fv1703215635%2Fugc%2Fcontent_7ac80fa7-9399-4303-8910-9575b82375a5" alt="Screenshot 2023-12-22 at 08.03.02 2" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;agar lebih nyaman saat digunakan klik icon &lt;em&gt;Open in new window&lt;/em&gt; pada bagian bawah kanan halaman.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--nhXI84XO--%2Ff_auto%2Cq_auto%2Fv1703215665%2Fugc%2Fcontent_c9a6e48b-b577-4442-9847-c22c479a26cf" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--nhXI84XO--%2Ff_auto%2Cq_auto%2Fv1703215665%2Fugc%2Fcontent_c9a6e48b-b577-4442-9847-c22c479a26cf" alt="Screenshot 2023-12-22 at 08.05.29" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;tunggu hingga proses selesai dan &lt;em&gt;Cloud shell&lt;/em&gt; siap digunakan.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Paste&lt;/em&gt; dari yang telah kita &lt;em&gt;copy&lt;/em&gt; pada &lt;em&gt;clipboard&lt;/em&gt; dan tekan enter&lt;br&gt;
maka hasil output kurang-lebih seperti berikut :&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--kKDPL7Zk--%2Ff_auto%2Cq_auto%2Fv1703215688%2Fugc%2Fcontent_5cbaa01a-4a03-44e7-935f-d248566e3189" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fres.cloudinary.com%2Fdaily-now%2Fimage%2Fupload%2Fs--kKDPL7Zk--%2Ff_auto%2Cq_auto%2Fv1703215688%2Fugc%2Fcontent_5cbaa01a-4a03-44e7-935f-d248566e3189" alt="Pasted image 20231222081049" width="800" height="400"&gt;&lt;/a&gt;&lt;br&gt;
*terdapat informasi dasar tentang instance dan aktivitas login *&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;sekarang kita sudah siap untuk memulai melakuakn instalasi pada webserver dan aplikasi laravel kita.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;
  
  
  install Nginx
&lt;/h3&gt;

&lt;p&gt;jalankan &lt;em&gt;promp&lt;/em&gt; berikut secara berurutan :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo apt update
sudo apt install nginx
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;akan dilakukan update dan melakukan install pada nginx&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;verifikasi instalasi&lt;/strong&gt;&lt;br&gt;
jalankan prompt &lt;code&gt;sudo nginx -t&lt;/code&gt;, maka akan menghasilkan &lt;em&gt;output&lt;/em&gt; seperti berikut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;tidak ada error syntax yang terjadi saat dilakukan verifikasi dan pengecekan&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  install php
&lt;/h2&gt;

&lt;p&gt;untuk menjalankan apliaksi laravel maka diperlukan tersedianya &lt;em&gt;Php&lt;/em&gt; dan kita akan menggunakan versi yang disarankan pada dokumentasi laravel yaitu versi 8.2, jalankan &lt;em&gt;prompt&lt;/em&gt; berikut secara berurutan :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;apt update
add-apt-repository ppa:ondrej/php
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;apt update
apt install php8.2 -y
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;verifikasi instalasi&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;php --version
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;jika berhasil akan menampilkan output seperti berikut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;PHP 8.2.13 (cli) (built: Nov 24 2023 08:47:18) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.13, Copyright (c) Zend Technologies
    with Zend OPcache v8.2.13, Copyright (c), by Zend Technologies
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  install php extension
&lt;/h3&gt;

&lt;p&gt;kita juga diharuskan melakukan install pada beberapa extension php yang paling dasar dapat mengikuti pada, &lt;em&gt;prompt&lt;/em&gt; berikut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo apt-get install -y php8.2-cli php8.2-common php8.2-fpm php8.2-mysql php8.2-zip php8.2-gd php8.2-mbstring php8.2-curl php8.2-xml php8.2-bcmath php8.2-dom 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;sesuaikan extension yang akan dibutuhkan oleh aplikasi laravel, sebab beberapa extension tidak disertakan seperti "memcached" dsb&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;kita diharuskan menjalankan salah satu &lt;em&gt;extension&lt;/em&gt; yaitu &lt;code&gt;php-fpm&lt;/code&gt;, berikut adalah 2 promp untuk menjalankan dan menghentikan extension tersebut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo systemctl start php8.2-fpm  
sudo systemctl enable php8.2-fpm
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;&lt;code&gt;sudo systemctl start php8.2-fpm&lt;/code&gt; jalankan jika belum berjalan sebelumnya&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  install composer
&lt;/h2&gt;

&lt;p&gt;kita juga perlu menginstall &lt;em&gt;php Composer&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;download file &lt;code&gt;.phar&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'e21205b207c3ff031906575712edab6f13eb0b361f2085f1f1237b7126d785e826a450292b6cfd1d64d92e6563bbde02') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;set composer &lt;em&gt;globally&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mv composer.phar /usr/local/bin/composer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;verifikasi instalasi&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;composer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;jalankan prompt tersebut maka akan keluar menu opsi penggunaan composer jika berhasil dilakukan instalasi&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  install node.js
&lt;/h3&gt;

&lt;p&gt;penggunaan node.js diperlukan untuk melakukan build pada &lt;em&gt;vite.js&lt;/em&gt; sebagaimana frontend tools pada laravel versi 10.x&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;curl -sL https://deb.nodesource.com/setup_20.x -o nodesource_setup.sh_`
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;setup_20.x berartikan akan bersiap untuk install versi 20.x anda dapat sesuaikan dengan versi yang diinginkan&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo bash nodesource_setup.sh_
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo apt install nodejs_
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;verifikasi instalasi&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;username@deploy-laravel:~$ node -v
v20.5.1
username@deploy-laravel:~$ npm -v
9.8.0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;jika dirasa versi npm perlu dilakukan pembaruan dapat dijalankan dengan, prompt berikut:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install -g npm@10.2.5 // update pada versi 10.x
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;lakukan jika npm pada versi &amp;lt;10.x&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  setup laravel
&lt;/h2&gt;

&lt;h4&gt;
  
  
  clone from github repostiory
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cd 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;kembali ke direktori home/utama&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;pilih project kalian yang akan anda clone dari repository github.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git clone https://github.com/yourusername/Your_Project.git
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;clone menggunakan https url atau protokol yang anda lebih anda inginkan&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cd Your_Project
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;masuk ke project hasil dari clone repostiory&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;install &lt;a href="https://laravel.com/docs/10.x/deployment#server-requirements" rel="noopener noreferrer"&gt;&lt;em&gt;requirement&lt;/em&gt; pada laravel&lt;/a&gt; dengan menjalankan prompt berikut dengan berurutan:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo npm install
sudo composer update
sudo composer install;
cp .env.example .env
sudo php artisan key:generate;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;sesuaikan konfigurasi pada file &lt;code&gt;.env&lt;/code&gt; dengan menjalankan prompt &lt;code&gt;nano .env&lt;/code&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  connect with database
&lt;/h3&gt;

&lt;p&gt;kembali ke project anda dan masuk ke &lt;code&gt;env&lt;/code&gt; dengan command &lt;code&gt;nano .env&lt;/code&gt;, setting sesuai dengan kebutuhan, contoh:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;DB_CONNECTION=mysql
DB_HOST=34.101.213.182 // public ip address
DB_PORT=3306 
DB_DATABASE=your_db_name //database name jika belum dibuat maka akan dibuatkan
DB_USERNAME=root // by default
DB_PASSWORD=your-db-password 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;sesuaikan dengan database yang telah disiapkan sebelumnya [[Ubuntu cloud compute#setup database]]&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;pastikan seluruh konfigurasi awal termasuk package composer yang diperlukan telah terinstall.&lt;/p&gt;

&lt;h2&gt;
  
  
  Setup Nginx
&lt;/h2&gt;

&lt;p&gt;final step, kita akan setup webserver untuk melayani aplikasi laravel kita.&lt;/p&gt;

&lt;p&gt;pergi ke direktori utama/home&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cd
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;pindahkan direktori project anda ke path &lt;code&gt;/var/www/&lt;/code&gt;, dengan prompt berikut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo mv ~/Your_Project /var/www/Your_Project
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;sesuaikan dengan nama direktori laravel app **Your_Project&lt;/em&gt;* *&lt;/p&gt;

&lt;h3&gt;
  
  
  set permission
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo chown -R :www-data /var/www/Your_Project/storage/

sudo chown -R :www-data /var/www/Your_Project/bootstrap/cache/

sudo chmod -R 0777 /var/www/Your_Project/storage/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;sesuaikan dengan nama direktori laravel app **Your_Project&lt;/em&gt;* *&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo nano /etc/nginx/sites-available/Your_Project
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;sesuaikan dengan nama direktori laravel app **Your_Project&lt;/em&gt;* *&lt;/p&gt;

&lt;p&gt;&lt;a href="https://laravel.com/docs/10.x/deployment#nginx" rel="noopener noreferrer"&gt;copy configurasi pada dokumentasi laravel&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;server_name extrnl_ip_or_your_domain.com;

root /var/www/html/Your_Project/public;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;*sesuaikan pada line 4 dan 5 *&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;pada line 4 masukan external/public ip atau domain yang anda gunakan untuk menjalankan apikasi&lt;/li&gt;
&lt;li&gt;pada line 5 ubah menjadi nama folder aplikasi anda &lt;/li&gt;
&lt;li&gt;maka akan mendapati hasil seperti berikut :
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;server {

listen 80;
listen [::]:80;
server_name 35.213.134.147;
root /var/www/AbadiComm_Site/public;

add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";

index 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$ {

fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;

fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;

include fastcgi_params;

}

location ~ /\.(?!well-known).* {

deny all;

}

}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;perhatikan dengan teliti pada penyesuain&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;konfirmasi bahwa tidak ada syntax error, dengan prompt berikut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo nginx -t
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;jika berjalan dengan baik dan benar maka akan didapati output sebagai berikut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Outputnginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;untuk menerapkan perubahan maka lakukan reload pada &lt;em&gt;nginx&lt;/em&gt;, dengan command berikut :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo systemctl reload nginx
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;coba kunjungi melalui web browser anda menggunakan external/public ip atau domain yang sudah anda hubungkan.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Setelah kita melewati &lt;em&gt;step-by-step&lt;/em&gt; yang cukup menyenangkan tersebut, kita telah belajar beberapa hal yaitu : &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Cloud VM&lt;/li&gt;
&lt;li&gt;Cloud computing dan Serverless architecture&lt;/li&gt;
&lt;li&gt;Penggunaan &lt;em&gt;Webserver&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;VPC Networks&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;masih banyak hal-hal menarik tentang Google Cloud Platform dan kita dapat memiliki kesempatan untuk belajar bersama-sama dengan mengikuti program dari Google yaitu &lt;a href="https://gdsc.community.dev/universitas-ciputra-surabaya-1/" rel="noopener noreferrer"&gt;Google Developer Student Clubs&lt;/a&gt; dan masih banyak lagi cabang keilmuan lainnya yang tidak kalah menarik. Saya pribadi senang jika dengan adanya artikel ini membantu anda dan apabila ada kritik maupun saran silahkan sertakan dikolom komentar, Terimakasih.&lt;/p&gt;

&lt;h2&gt;
  
  
  Notes
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Database Host berubah ketika restart/stop
&lt;/h2&gt;

&lt;p&gt;Layanan vpc reserved external ip tidak tersedia pada database sql karena database sql tidak mendukung penggunaan alamat IP statis. Alamat IP statis adalah alamat IP yang selalu sama, bahkan ketika server dimatikan dan dihidupkan kembali. Database sql menggunakan alamat IP dinamis, yang berarti bahwa alamat IP dapat berubah ketika server dimatikan dan dihidupkan kembali.&lt;/p&gt;

&lt;p&gt;Alasan database sql menggunakan alamat IP dinamis adalah untuk meningkatkan ketersediaan. Jika server database sql mati, alamat IP akan dibebaskan dan dapat digunakan oleh server database sql lain. Hal ini memastikan bahwa database sql selalu dapat diakses, bahkan ketika satu server database sql mati.&lt;/p&gt;

&lt;h4&gt;
  
  
  Solusinya
&lt;/h4&gt;

&lt;p&gt;setiapkali instance database berhenti maka kita harus mengubah host pada file &lt;code&gt;.env&lt;/code&gt; atau kita menggunakan &lt;em&gt;Load balancer&lt;/em&gt; yang sudah disediakan menjadi sebuah produk &lt;em&gt;GCP&lt;/em&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Nginx failed pasca restart/stop
&lt;/h4&gt;

&lt;p&gt;hal tersebut tidak dalukannya automasi maka anda dapat melakukan langkah berikut :&lt;/p&gt;

&lt;p&gt;matikan seluruh server yang telah berjalan sebab memungkinkan konflik pada port&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo killall apache2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;nyalakan kembali nginx&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo systemctl start nginx
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;lakukan pengecekan pada berjalanya nginx&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo service nginx status

sudo nginx -t
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;lakukan reload jika ada perubahan saat nginx berhenti&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo systemctl reload nginx
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Buy me a coffee ☕️
&lt;/h2&gt;

&lt;p&gt;global: &lt;a href="//buymeacoffee.com/alizaenazet"&gt;buymeacoffee.com/alizaenazet&lt;br&gt;
&lt;/a&gt;idn: &lt;a href="//saweria.co/alizaenazet"&gt;saweria.co/alizaenazet&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Rererences
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-laravel-with-nginx-on-ubuntu-22-04" rel="noopener noreferrer"&gt;https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-laravel-with-nginx-on-ubuntu-22-04&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.nicesnippets.com/blog/install-laravel-on-ubuntu-2204-with-nginx-example" rel="noopener noreferrer"&gt;https://www.nicesnippets.com/blog/install-laravel-on-ubuntu-2204-with-nginx-example&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://computingforgeeks.com/how-to-install-php-8-2-on-ubuntu/" rel="noopener noreferrer"&gt;https://computingforgeeks.com/how-to-install-php-8-2-on-ubuntu/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://utho.com/docs/tutorial/how-to-install-php-8-2-on-ubuntu-22-04/" rel="noopener noreferrer"&gt;https://utho.com/docs/tutorial/how-to-install-php-8-2-on-ubuntu-22-04/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://medium.com/@henri706/how-to-install-php-fpm8-2-on-ubuntu-22-04-lts-d74c9b8ed9dd" rel="noopener noreferrer"&gt;https://medium.com/@henri706/how-to-install-php-fpm8-2-on-ubuntu-22-04-lts-d74c9b8ed9dd&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://serverfault.com/questions/964568/can-not-restart-nginx-job-for-nginx-service-failed-because-the-control-process" rel="noopener noreferrer"&gt;https://serverfault.com/questions/964568/can-not-restart-nginx-job-for-nginx-service-failed-because-the-control-process&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.ispmanager.com/docs/ispmanager-lite/if-nginx-does-not-start-after-rebooting-the-server" rel="noopener noreferrer"&gt;https://www.ispmanager.com/docs/ispmanager-lite/if-nginx-does-not-start-after-rebooting-the-server&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.nginx.com/resources/glossary/nginx/" rel="noopener noreferrer"&gt;https://www.nginx.com/resources/glossary/nginx/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>webdev</category>
      <category>laravel</category>
      <category>gcp</category>
      <category>nginx</category>
    </item>
  </channel>
</rss>
