Deploy Flask App ke Hosting Vercel

Widi Afandi August 11, 2021

Halo semuanya kali ini saya akan membahas bagaimana cara untuk mendeploy web yang menggunakan flask pada vercel. Vercel merupakan hosting gratis namun soal kecepetan akses ke web yang dideploy menurut saya pribadi vercel lebih cepat dibandingkan herokuapp. Untuk flask sendiri ialah sebuah microservices dari python yang digunakan sebagai backend. Flask ini mirip-mirip dengan django tapi katanya sih lebih simple flask.

1. Siapkan web flask

Pertama siapkan web flask yang akan didideploy. Bila belum punya, temen-temen bisa download di github saya. atau bisa membuat web flask sederhana sendiri mengikut dokumentasi dari flask.

2. Masuk ke folder yang ingin dideploy dan lakukan export

Masuk ke folder project temen-temen kemudian ketik perintah dibawah pada terminal/cmd

    
        export FLASK_APP=app.py
        export FLASK_ENV=development
    

3. Jalankan script

Ketik perintah dibawah pada terminal/cmd untuk menjalankan project flask kita pada localhost

flask run

4. Buat akun vercel

Buat akun atau login pada akun vercel

5. Install vercel

Install vercel pada terminal atau cmd. disini saya menggunakan npm untuk install

npm i -g vercel
Jika gagal bisa tambahkan sudo di depan

6. Buat script vercel.json

Buatlah file berformat .json dan isi dengan code berikut. Untuk src dan dest sesuaikan dengan nama file pythonnya. Kemudian save pada folder root project

    
        {
            "version": 2,
            "builds": [
                {
                    "src": "./app.py",
                    "use": "@vercel/python"
                }
            ],
            "routes": [
                {
                    "src": "/(.*)",
                    "dest": "app.py"
                }
            ]
        }

    

7. Buat file requirements.txt

Teman-teman bisa langsung menggunakan library freeze untuk melist library yang digunakan.

pip freeze > requirements.txt

8. Mari mendeploy

Persiapan telah selesai, sekarang waktunya mendeploy project kita ke vercel. pertama jalankan perintah dibawah pada terminal atau cmd

vercel --prod

Kemudian bisa diikuti seperti gambar dibawah

Untuk "What’s the name of your existing project?" bisa disesuakan dengan nama web temen-temen misal mau nama web makanankhas ya ganti aja dengan itu

Fig 1 - Konfigurasi sebelum deploy

Special thanks to:

  1. dev.to