Deploy Python Flask ke Awan

Sebelum melakukan deployment aplikasi Flask, ada beberapa hal yang harus anda siapkan, yaitu:

  • Akun awan.io
  • ssh public key yang sudah didaftarkan di halaman dahsboard awan.io
  • git url endpoint yang akan digunakan untuk push code. Formatnya adalah git@awan.io:ORGANIZATION/APP_NAME.git
  • Sebuah file awan.yml yang diletakan pada top folder aplikasi.

Untuk membuat sebuah aplikasi menggunakan Flask, pertama-tama buat dulu sebuah folder untuk menyimpan semua script python.

mkdir my-flask-app
cd my-flask-app

Setelah itu, buat tiga buah file yang dibutuhkan oleh aplikasi, yaitu: app.py, requirements.txt dan awan.yml

touch app.py requirements.txt awan.yml

Buka file requirements.txt untuk mendaftarkan package-package yang dibutuhkan.

Flask>=0.12.2
gunicorn>=19.7.1

Flask adalah package core untuk menjalankan aplikasi. Sementara Gunicorn akan kita gunakan untuk menjalankan Flask pada environment production.

Selanjutnya kita edit file app.py

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

if __name__ == "__main__":
    app.run(debug=True)

Jalankan perintah berikut untuk melihat output aplikasi ini.

FLASK_APP=app.py flask run --port=5002

Silahkan buka url http://localhost:5005 pada browser anda.

Jika aplikasi sudah berjalan, sekarang kita akan coba untuk deploy ke Awan. Untuk itu kita perlu menyiapkan informasi tentang aplikasi ini dan menuliskannya ke file awan.yml

version: '1.0'
web:
  type: python
  version: 3
  run: gunicorn --bind 0.0.0.0:$PORT app:app

Lakukan git commit untuk menyimpan informasi file yang sudah kita buat.

git init
git add -v .
git commit -m "initial commit"

Kita perlu menambahkan remote repository Awan ke dalam project kita.

git remote add awan git@awan.io:ORGANIZATION/APP_NAME.git

Kemudian push aplikasi ini ke Awan:

git push awan master

Tunggu beberapa saat hingga deployment selesai, kemudian buka url apliakasi di awan.io.

results matching ""

    No results matching ""