5 Cara Deploy Aplikasi Flask di aaPanel, Kamu Wajib Tahu!
Halo DomaiNesians! Beberapa dari kalian pasti sudah tahu bahwa Flask adalah salah framework Python yang paling populer. Selain Django, Flask adalah salah satu framework Python yang memiliki sifat ringan, fleksibel, dan mudah untuk dikembangkan.
Tapi, jika berhubungan dengan proses deployment di server, beberapa dari kita mungkin masih merasa kesulitan untuk mengatur environment, Gunicorn, dan Nginx secara manual.
Nah, di artikel tutorial kali ini, kita akan belajar secara singkat bagaimana cara men-deploy aplikasi Flask di aaPanel. Mulai dari upload upload source code, konfigurasi virtual environment, hingga cara mengaktifkan SSL. Jadi, simak tutorialnya sampai habis ya!
Persiapan Sebelum Deploy Aplikasi Flask di aaPanel
Sebelum memulai proses deployment aplikasi Flask di aaPanel, pastikan kamu sudah menyiapkan beberapa hal berikut ini agar proses deployment bisa berjalan lancar tanpa error.
1. VPS Sudah Terinstal aaPanel
Pastikan kamu sudah memiliki server Cloud VPS yang aktif dan aaPanel sudah terpasang. Jika kamu belum memasang aaPanel di VPS, kamu bisa cek tutorial berikut ini.
2. Aplikasi Flask Siap Deploy
Pastikan aplikasi Flask kamu sudah di tes dan sudah berjalan di local environment. Pastikan juga aplikasi yang akan di-deploy sudah bebas dari error dan siap diakses oleh pengguna.
3. Domain yang Mengarah ke Server
Atur DNS di domain kamu agar A Record mengarah ke IP VPS. Setelah deploy nanti, domain tersebut akan langsung bisa diakses melalui Flask yang kamu install di aaPanel. Jika kamu menggunakan domain dari DomaiNesia, kamu bisa mengatur DNS Management dengan tutorial berikut ini.
Langkah-Langkah Deploy Aplikasi Flask di aaPanel
Flask juga merupakan salah satu framework Python yang ringan dan fleksibel. Setelah belajar cara men-deploy aplikasi Laravel dan Django di aaPanel, kali ini kita akan membahas langkah men-deploy aplikasi Flask di aaPanel:
1. Instal Python Environment di aaPanel
Langkah pertama adalah menyiapkan Python environment di aaPanel. Hal ini dilakukan karena Flask berjalan di atas Python. Caranya:
a. Login ke Dashboard aaPanel.
b. Masuk ke menu App Store di sidebar kiri.
c. Ketik Python Project Manager di kolom pencarian.
d. Klik Install dan tunggu proses selesai.
Plugin ini berfungsi sebagai pengelola proyek berbasis Python. Dengan Python Project Manager, kamu bisa membuat dan menjalankan aplikasi Flask di lingkungan yang terpisah (virtual environment), sehingga konfigurasi satu proyek tidak akan memengaruhi proyek lainnya di server yang sama.
2. Upload Source Code Proyek Flask
Selanjutnya, upload source code proyek Flask yang sudah kamu siapkan sebelumnya ke server. Caranya:
a. Buka menu Files di aaPanel.
b. Arahkan ke direktori:
|
1 |
/www/wwwroot/ |
c. Buat folder baru, misalnya my_flask_app.
d. Upload file source code Flask kamu ke folder tersebut (boleh dalam format .zip).
e. Setelah selesai, ekstrak file .zip di tempat yang sama.
f. Pastikan struktur folder kamu terlihat seperti ini setelah ekstraksi:
|
1 2 3 4 5 |
└── www/   └── wwwroot/     └── my_flask_app/       ├── app.py       └── requirements.txt |
File app.py berisi entry point aplikasi Flask sementara file requirements.txt berisi daftar dependensi. Pastikan juga kamu sudah mencantumkan gunicorn di dalam file requirements.txt.
3. Buat dan Start Proyek di Python Project Manager
Setelah mengupload proyek Flask ke server, sekarang kita buat project environment khusus untuk Flask di aaPanel. Karena file proyek kita sudah memiliki requirements.txt, maka langkah ini akan secara otomatis membuat virtual environment, menginstal dependensi, dan mengatur startup Gunicorn:
a. Masuk ke menu App Store kemudian pilih Python Project Manager.
b. Klik Add Project.
c. Isi form konfigurasi dengan detail berikut:
- Name: nama proyek kamu, misalnya: my_flask_app
- Version: versi Python yang digunakan untuk proyek Flask kamu, misalnya: 3.11.4
- Framework: framework Python yang digunakan, pilih: flask
- Startup Mode: cara aplikasi dijalankan. Untuk proyek Django atau Flask, pilih gunicorn
- Project Path: lokasi folder proyek kamu di server, contoh: /www/wwwroot/my_flask_app
- Log Path: folder tempat menyimpan file log, contoh: /www/wwwroot/my_flask_app/logs. Jika tidak ada, kamu bisa membiarkannya kosong
- Start file/folder: file Python utama yang digunakan untuk menjalankan aplikasi. Untuk proyek Flask, file utama biasanya memiliki nama app.py
- Port: port tempat aplikasi Flask kamu akan dijalankan, contoh: 5000 (atau port lain yang kosong)
- Run User: root
- Centang opsi Install module dan System startup agar aaPanel bisa menginstal dependencies dari file requirements.txt dan proyek bisa otomatis dijalankan setiap kali server direstart.
d. Klik Confirm, dan tunggu hingga proses environment selesai dibuat.
Pada tahap ini, aaPanel akan menyiapkan virtual environment (virtualenv) dan menghubungkannya dengan Gunicorn secara otomatis.
e. Setelah proses selesai, pastikan status proyek di Python Manager adalah Open atau Running (jika Suspended, cek Logs untuk mengatasi masalah jalur gunicorn).
f. Cek aplikasi secara lokal dengan mengakses
|
1 |
http://127.0.0.1:5000 |
atau port lain sesuai konfigurasi di app.py. Buka URL tersebut di browser untuk memastikan aplikasi berjalan dengan baik. Jika halaman yang muncul sudah sesuai dengan proyek aplikasi Flask kamu, berarti semuanya berfungsi.
4. Integrasi dengan Nginx (Reverse Proxy)
Agar aplikasi bisa diakses langsung lewat domain tanpa harus menuliskan port (:5000), kita gunakan Reverse Proxy lewat Nginx.
a. Masuk ke menu Website dan pastikan domain kamu sudah terdaftar (Jika belum, tambahkan domain dengan klik tombol Add Site kemudian isi data yang dibutuhkan.
b. Klik pada domain tersebut
c. Buka tab Reverse Proxy, klik Add Reverse Proxy, dan isi form berikut:
- Proxy name: flask_proxy
- Proxy dir: /
- Target URL: arahkan ke port internal Gunicorn (sesuai yang kamu masukkan di Python Manager) http://127.0.0.1:5000
- Sent domain: 127.0.0.1
d. Klik Confirm
Sekarang setiap request ke http://flask.mydomain.com akan diteruskan oleh Nginx ke Gunicorn di port 5000.
5. Aktifkan SSL (HTTPS)
Jika kamu belum mengaktifkan SSL untuk domain aplikasi Flask sebelumnya, kamu bisa mengaktifkannya pada tahap ini. Tujuannya agar situs Flask kamu bisa diakses dengan aman dan dipercaya oleh browser, aktifkan SSL gratis dari Let’s Encrypt. Caranya:
a. Masuk ke menu Website, kemudian pilih domain proyek Flask kamu
b. Klik tab SSL kemudian pilih Let’s Encrypt.
c. Klik Apply.
Jika proses berhasil, domain kamu akan otomatis memiliki sertifikat HTTPS. Sekarang Flask kamu bisa diakses melalui:
|
1 |
https://flask.mydomain.com |
Kesimpulan
Deploy aplikasi Flask di aaPanel bisa dilakukan dengan mudah jika kamu tahu bagaimana langkah-langkahnya. Dengan bantuan Python Project Manager, kamu bisa setup virtual environment, jalankan Gunicorn, dan atur Nginx hanya lewat antarmuka web.
Semua langkah tersebut, mulai dari upload source code, konfigurasi reverse proxy, hingga SSL bisa kamu selesaikan tanpa perintah terminal yang rumit. Jika kamu ingin membangun aplikasi Flask dengan server yang cepat, aman, dan stabil, kamu bisa menggunakan Cloud VPS DomaiNesia.
Dengan performa tinggi, integrasi mudah, dan dukungan penuh 24/7, kamu bisa membangun aplikasi Flask dengan aman dan tenang. Jadi, tertarik untuk mencoba Cloud VPS dari DomaiNesia?











