Jinsi ya Kuweka (Deploy) Django Project Kwenye PythonAnywhere – Hatua za Lazima Tu
Somo hili linaeleza hatua za lazima za kuchapisha Django project mtandaoni kwa kutumia PythonAnywhere. Tutatumia Bash Console, Virtual Environment, na GitHub (au upload ya project). Video nzima ya somo hili utaipata hapa https://bongoclass.com/learn/play/b8c833192312b34f08ab8327458f539054d97ac6
?️ HATUA YA 1: Andaa Project Yako Kimtandao
? 1.1 — Unda requirements.txt
Ikiwa tayari una Django project kwenye kompyuta yako, fungua terminal (cmd/bash), ingia kwenye folder la project, na andika:
pip freeze > requirements.txt
➡️ Hii itaweka list ya packages zote ulizotumia (kama Django, Pillow, etc) kwenye faili la requirements.txt ili ziweze kusanikwa baadaye kwenye server ya PythonAnywhere.
? HATUA YA 2: Upload Project au Clone Kutoka GitHub
Una chaguzi 2 hapa:
? 2.1 — Upload Files Moja kwa Moja
Fungua PythonAnywhere, login, nenda kwenye Files tab, bonyeza Upload, na weka project yako (zip au folder moja moja).
AU
? 2.2 — Clone Kutoka GitHub kwa Bash Console
Fungua Consoles > Bash, kisha clone repo yako:
git clone https://github.com/jinalako/projectyako.git
Mfano:
git clone https://github.com/skyclassbongo/pybongo.git
➡️ Hii itaweka project kwenye folder lenye jina la project.
? HATUA YA 3: Tengeneza Virtual Environment
python3.10 -m venv venv
➡️ Hii inaweka mazingira ya kujitegemea ya Python kwa ajili ya project yako (venv).
? HATUA YA 4: Activate Virtual Environment
source venv/bin/activate
➡️ Baada ya hapa, unaweza kusanikisha Django na mahitaji yako mengine.
? HATUA YA 5: Install Mahitaji kutoka requirements.txt
pip install -r yourproject/requirements.txt
Mfano:
pip install -r pybongo/requirements.txt
⚙️ HATUA YA 6: Tayarisha wsgi.py na settings.py
Angalia kama wsgi.py (ndani ya folder la project) lina:
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'pybongo.settings')
➡️ Hii inaelekeza PythonAnywhere ijue wapi pa kupata settings za project yako.
?️ HATUA YA 7: Sanidi Web App kwenye PythonAnywhere
-
Nenda Dashboard > Web > Add a new web app
-
Chagua Manual Configuration
-
Chagua Python 3.10
-
Kwenye Source code path andika:
/home/jinalako/projectyako
Mfano:
/home/skyclassbongo/pybongo
-
Bonyeza link ya WSGI file, hariri kama hivi:
import sys
import os
path = '/home/jinalako/projectyako'
if path not in sys.path:
sys.path.append(path)
os.environ['DJANGO_SETTINGS_MODULE'] = 'projectyako.settings'
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
? HATUA YA 8: Run Migrations na Collectstatic
Kurudi kwenye Bash console, andika:
cd projectyako
python manage.py migrate
python manage.py collectstatic
➡️ Hii itaweka database sawa na kubeba CSS/JS zako kwenda kwenye static folder.
?️ HATUA YA 9: Rekebisha ALLOWED_HOSTS
Fungua settings.py:
ALLOWED_HOSTS = ['yourusername.pythonanywhere.com']
Badala ya [], ongeza jina la domain yako.
? HATUA YA 10: Bofya Reload kwenye Web Tab
Nenda Web tab, bonyeza Reload app chini kabisa.
✅ Sasa unaweza kufungua:
https://yourusername.pythonanywhere.com
? MUHTASARI
| Hatua | Kazi Yake |
|---|---|
| 1 | Tengeneza requirements.txt |
| 2 | Upload/clone project |
| 3 | Tengeneza virtualenv |
| 4 | Activate environment |
| 5 | Install packages (pip install) |
| 6 | Hakikisha wsgi.py na settings.py ni sahihi |
| 7 | Sanidi web app (source code path, wsgi) |
| 8 | Run migrate, collectstatic |
| 9 | Rekebisha ALLOWED_HOSTS |
| 10 | Reload web app |
Mwisho:
Katika somo linalofuata tutakwend akujifunz akuhusu database kwenye django. Kuunganisha database, kuweka data na kufanya migration