Cara Deploy Python Django Ke Heroku Di Android


Dalam postingan sebelumnya saya sudah berbagi cara install dan menjalankan framework django di smartphone android. Namun dalam postingan kali ini saya akan berbagi cara deploy django ke heroku menggunakan android. Tentu kita bisa membuat website kita dari yang localhost hingga menjadi online.

Sebelumnya juga saya sudah membagikan cara deploy python flask di smartphone android atau bisa kalian baca DISINI.

Saya anggap kalian sudah memahami apa itu django karena disini kita akan mencoba push django ke heroku menggunakan smartphone android. Jika kalian tidak mengerti apa itu django silahkan mencarinya di situs resmi django.

Oke, sekarang kita mulai langkah-langkah push django ke heroku menggunakan smartphone android. Bagi pemula django silahkan baca baik-baik agar mudah dimengerti.

HEROKU
1. Akun Heroku
Jika kalian ingin push aplikasi website kalian ke heroku, kalian harus memiliki akun heroku. Jika kalian tidak memilikinya, kalian bisa mendaftarkan akun di situs heroku.

2. Termux
Termux akan kita gunakan untuk menjalankan perintah-perintah untuk push ke heroku. Jika belum memiliki termux silahkan cari di playstore.

3. Install Gunicorn
Kemudian install gunicorn yang akan diimport ke file Procfile. Install gunicorn berikut.

pip install gunicorn

4. Buat Project Django
Saya rasa untuk membuat project django kalian sudah mengerti. bagi yang masih bingung saya contohkan menulis Hello World

django-admin startproject oo
cd oo
python manage.py startapp aa

oo/urls.py

from django.contrib import admin
from django.urls import path, include
urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('aa.urls')),
]

aa/views.py 

from django.http import HttpResponse
def index(request):
return HttpResponse('Hello World!')

aa/urls.py

from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]

Kemudian jalankan python manage.py migrate.

5. File Requirements.txt
Kita membutuhkan file requirements.txt yang berisi modul django. Jika termux kalian sudah terinstall django maka buat file requirements.txt seperti berikut di termux

pip freeze > requirements.txt

Lihat isi file requirements.txt, kalian akan melihat seperti dibawah ini:

Django==2.0.3
gunicorn==19.7.1
pytz==2018.3

6. Procfile
Kalian akan membutuhkan file bernama Procfile. file Procfile ini harus diletakan didirectory root project kalian. Kalian isikan script berikut ke dalam Procfile.

web: gunicorn project_saya.wsgi

Di atas tertulis project_saya yang merupakan nama project saya yang berisi file wsgi.py. Kalian bisa menggantinya sesuai nama project kalian.

7. Login Heroku
Sekarang kita harus login ke heroku menggunakan termux, ketikan berikut

heroku login 

Masukan email dan password yang sudah didaftarkan di heroku.

8. Buat Folder Aplikasi
Kemudian buatlah folder aplikasi diheroku, kalian bisa mengetikan

heroku apps:create NamaAplikasiKalian

9. Settings
Dalam file setting kita akan memasukan host yang diizinkan. host yang diizinkan adalah nama aplikasi yang sudah kalian buat seperti diatas, contohnya

oo/setings.py

ALLOWED_HOST = ['NamaAplikasi.herokuapp.com']

10. Static Folder
Karena untuk pertama kita hanya menampilkan tulisan Hello World yang dihosting oleh heroku, maka ketikan berikut di termux

heroku config:set DISABLE_COLLECTSTATIC=1

11. Heroku Local
Jika kalian ingin menjalankan aplikasi kalian di heroku secara local kalian bisa mengetikan

heroku local

12. Push
Jika kalian sudah melengkapi syarat seperti di atas maka sekarang kalian bisa push. Namun sebelum itu kalian harus berada di directory utama aplikasi kalian dan tambahkan folder-folder dan file yang ingin di push seperti berikut

cd oo
git init
git add *
git commit -m "OK"

Kemudian jika sudah menjalankan perintah diatas, sekarang jalankan perintah

git push heroku master

Tunggulah sebentar, termux sedang push aplikasi kita ke heroku.

13. Buka Browser
Jika push sudah selesai sekarang saatnya membuka browser dan memasukan nama aplikasi website kalian. Nama aplikasi website kalian akan muncul di termux ketika kalian selesai push. contohnya seperti berikut

https://eaeaea.herokuapp.com

Lihat hasilnya sekarang kalian sudah berhasil push django ke heroku menggunakan smartphone android. Jika kalian ingin melihat log aplikasi kalian bisa mengetikan di termux

heroku logs

EDIT
Jika kalian sudah keluar dari termux namun ingin push ulang dengan source code yang telah di update, maka kalian bisa login ke heroku di termux dan remote aplikasi kalian, contohnya

heroku login
heroku git:remote -a NamaAplikasiKalian
git add *
git commit -m "OK"
git push heroku master

Sebenarnya masih ada yang ketinggalan tentang database postgresql namun ketika saya mencoba menggunakan database postgresql, dalam modul psycopg2 terdapat error pada path environment. jadi ini sebagai contoh dasarnya saja.

Begitulah cara push django ke heroku menggunakan smartphone android. Mungkin yang baru mencoba akan sangat terasa membingungkan ya, jika kalian bingung atau mendapatkan error silahkan berikan komentar pasti saya bantu.

Demikian postingan kali ini, mohon dimaafkan jika ada suatu kesalahan. Semoga bermanfaat bagi kalian semuanya, sekian dan terima kasih.