Panduan Mudah Menerapkan Aplikasi Flask di Linux Bonus Nginx Web Server

Flask adalah web frmework ringan yang dibuat dengan bahasa Python yang dirancang untuk membantu pengembang membangun aplikasi web yang aman, terukur, dan mudah dipelihara. Sebagai web framework sumber terbuka dan gratis, flask memiliki beberapa utilitas dan pustaka yang dapat Anda gunakan untuk membuat aplikasi web modern. Cara kerja Flask berdasarkan Werkzeug dengan dan templatenya menggunakan Jinja2.

Flask seperti mercusuar dengan filosofi desainnya yang berpusat pada penyediaan alat yang dibutuhkan pengembang untuk memulai dengan cepat pembuatn situs web dengan kerangka kerja lengkap. Inilah alasan Flask menarik perhatian developer, mulai dari pemula hingga pengembang web profesional.

Di bawah ini adalah beberapa kelebihan Flask yang harus anda ketahui:
  1. Sangat Fleksibel.
  2. Server Pengembangan dan Debugger bawaan.
  3. Minimalis dan Mudah Dipelajari.
  4. Pengiriman Permintaan yang Tenang.
  5. Ringan.
  6. Dukungan Terintegrasi untuk Pengujian Unit.
  7. Diadopsi Secara Luas.
  8. Beragam ekstensi
Isi artikel ini akan memandu anda langkah demi langkah menrapkan Flash ke server Ubuntu. Sebagai Frontend kami gunakan web server Nginx untuk melakukan reverse proxy.


1. Cara Pasang Flask di Ubuntu

Pada server Ubuntu, ada beberapa cara untuk menginstal Flask.

Melalui apt, paket Flask telah disertakan dalam repositori resmi Ubuntu dan dapat diinstal dengan cepat dan mudah. Cara ini merupakan metode sederhana memasang Flash di Ubuntu, namun sanagat disayangkan terkadang versi Flash yang bersumber dari repositori Ubuntu masih menggunakan versi lama.

Sebagai gantinya, anda dapat menggunakan lingkungan virtual Python. Metode ini sangat disarankan oleh banyak pengguna Ubuntu, karena dengan lingkungan virtual anda dapat membuat lingkungan terisolasi untuk berbagai proyek Python yang berjalan di server Ubuntu. Pada artikel ini kita akan memasang Flask di lingkungan virtual Python.

a. Buat Python virtualenv

Sebagai langkah pertama anda harus memasatikan Python virtualenv telah terpasang di Ubuntu anda. Kita asumsikan anda telah memasang Python venv di Ubuntu. Jika anda mengalami kesulitan memasang Python venv, baca artikel kami sebelumnya.


Baiklah, tanpa panjang lebar kita langsung saja masuk ke lingkungan virtual Python degan menjalankan skrip di bawah ini.

Buat Python virtualenv
root@ns5:~# mkdir -p /var/pythonenv
root@ns5:~# cd /var/pythonenv
root@ns5:/var/pythonenv# python3 -m venv flaskfraework
Anda dapat langsung mengaktifkan lingkungan virtual Python "flaskfraework" yang telah dibuat di atas.

Langsung aktifkan Python virtualenv
root@ns5:/var/pythonenv# source flaskfraework/bin/activate
(flaskfraework) root@ns5:/var/pythonenv#

b. Pasang Flask dengan pip

Anda masih berada di shell Python virtualenv, sebelum anda memasang Flask, untuk meyakinkan Python sudah berjalan dengan benar, periksa versi Python yang anda pasang di Ubuntu.

Periksa versi Python
(flaskfraework) root@ns5:/var/pythonenv# python3 -V
Python 3.10.12 
Skrip warna biru, artinya anda saat ini sedang berada di lingkungan virtual Python. Kemudian kita lanjutkan dengan memasang Flask. Karena pada artikel ini kita menggunakan lingkungan virtual Python, itu artinya Flash harus dipasang/di install dengan pip. Di bawah ini adalah cara memasang Flask dengan pip.

Pasang Flask dengan pip
(flaskfraework) root@ns5:/var/pythonenv# pip install Flask
Dach, kelar juga nginstal atau pasang Flask nya, terus kami harus ngapain lagi?.

Sebelum kita pelajari lebih dalam lagi, periksa aja dulu versi Flask yang kamu gunaka dengan skrip di bawah ini.

Periksa versi pip
(flaskfraework) root@ns5:/var/pythonenv# python -m flask --version
Python 3.10.12
Flask 3.0.3
Werkzeug 3.0.2
Terus... terus... apa lagi yang kami kerjakan?. Karena anda banyak tanya, kaya si Udin, kita lanjutkan ke bagian berikutnya.

2. Cara Buat aplikasi dengan Flask

Pada contoh ini kita akan buat aplikasi sederhana yang akan menampilkan tulisan "Selamat Pagi Udin, Apakah kamu sudah sarapan?." di web browser Google Chrome. Langkah pertama kita buat aplikasi Python dengan nama "udinsedunia.py" Berikut cara pembuatannya (masih dilingkungan virtual Python)

Buat app python dan ketikkan skrip di bawah ini
(flaskfraework) root@ns5:/var/pythonenv# cd flaskfraework
(flaskfraework) root@ns5:/var/pythonenv/flaskfraework# touch udinsedunia.py
(flaskfraework) root@ns5:/var/pythonenv/flaskfraework# nano udinsedunia.py
from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
    return '"Selamat Pagi Udin, Apakah kamu sudah sarapan?."'

if __name__ == '__main__':
    app.run()
Setelah itu anda jalankan file "udinsedunia.py" dengan perintah di bawah ini.

Jalankan app Python
export FLASK_APP=(flaskfraework) root@ns5:/var/pythonenv/flaskfraework# export FLASK_APP=udinsedunia.py
(flaskfraework) root@ns5:/var/pythonenv/flaskfraework# flask run
 * Serving Flask app 'udinsedunia.py'
 * Debug mode: off
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
 * Running on http://127.0.0.1:5000
Press CTRL+C to quit
Aplikasi Python dengan file "udinsedunia.py" telah berjalan dengan IP 127.0.0.1 atau localhost port 5000. Kemudian bagaimana kita menampilkan file "udinsedunia.py" di Google Chrome, sedangkan IP nya 127.0.0.1 dan kitakan menggunakan server Ubuntu yang di remote dengan Pytty di Windows. Mungkin kalau kita memasang Flash di Ubuntu Desktop bisa langsung di buka di Google Chrome. Ente...., Udin gak usah khawatir, biar ente gak banyak nanya, kita langsung aja ke pembahasan berikutnya.

3. Cara Buat Reverse Proxy Nginx

Pada bagian ini kita anggap anda telah memasang Nginx di server Ubuntu dan Nginx telah berjalan normal. Pada contoh ini kita buat pembahasan secara sederhana dengan file standar Nginx. Untuk mmbuat reverse Proxy Nginx, silahkan anda buka file /etc/nginx/sites-available/default. Biar tidak bingung, hapus saja semua skrip yang ada di file /etc/nginx/sites-available/default dan anda ganti dengan skrip di bawah ini. (Untuk menjalankan Nginx anda buka lagi Putty di Windows, jadi ada 2 Putty yang berjalan).

Masukkan skrip ke file default (nginx)
root@ns5:~# cd /etc/nginx/sites-available
root@ns5:/etc/nginx/sites-available# nano default
server {
    listen 80;
    server_name 192.168.7.3;

    location / {
        proxy_pass http://127.0.0.1:5000;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
192.168.7.3 adalah IP server Ubuntu anda, port 80 adalah port Nginx dan 127.0.0.1:5000 adalah IP dan port server Flask yang telah anda jalankan di atas. Langkah berikutnya, anda restart Nginx dengan perintah di bawah ini.

Restart Nginx
root@ns5:/etc/nginx/sites-available# systemctl restart nginx
Langkah terakhir adalah buka Google Chrome, pada menu address bar anda ketikkan "http://192.168.7.3/", hasilnya pada Google Chrome akan menampilkan tulisan "Selamat Pagi Udin, Apakah kamu sudah sarapan?."

Bila sudah muncul tulisan di atas, berarti anda telah berhasil menjalankan Flask di server Ubuntu. Kami harap anda jangan berpuas diri, teruslah membaca dan mempraktekkan Flask. Karena fitur dan fungsi Flask banyak sekali, tak mungkin kami bahas dalam satu artikel ini. Jadi, teruslah belajar agar anda mampu menguasai Flask berikut fitur-fitur lainnya.
Next Post Previous Post
No Comment
Add Comment
comment url