Uppsetning og uppsetning Django Web Framework með sýndarumhverfi í CentOS/Debian - Part 1


Fyrir um 20 árum síðan þegar veraldarvefurinn var enn á byrjunarstigi var það nánast sjaldgæfur munaður að hafa einka- eða viðskiptavef. Með síðari þróun nokkurrar veftækni og kynningu á kraftmiklu efni sem boðið er upp á með blöndu af forritum á netþjóni og gagnagrunnum gátu fyrirtæki ekki lengur verið ánægð með að vera með kyrrstæða vefsíðu.

Þannig urðu vefforrit að veruleika - forrit í orðsins fyllstu merkingu keyra ofan á vefþjóni og aðgengileg í gegnum vafra.

Til að gera þróun auðveldari og skilvirkari voru veframmar hannaðir til að aðstoða forritara við að búa til forrit. Í stuttu máli sér veframmi um sameiginlega kjarnavirkni í þróunarferlinu eins og að takast á við notendalotustjórnun, samskipti við gagnagrunna og þá góðu venju að halda viðskiptarökfræði aðskildum frá skjárökfræði, svo nokkur dæmi séu nefnd.

Í þessari þriggja greina Django seríu munum við kynna þér Django, vinsælan veframma sem byggir á Python. Af þeim sökum er mælt með að minnsta kosti smá þekkingu á þessu forritunarmáli en ef þú hefur litla sem enga reynslu af því, munum við einnig leiða þig í gegnum grunnatriðin.

Uppsetning Django í CentOS og Debian Servers

Þó að þú getir sett upp Django frá bæði Debian (v1.7.7: auknum stuðningi verður hætt í desember 2015) og Fedora EPEL (v1.6.11: auknum stuðningi var hætt í apríl 2015), þá er tiltæka útgáfan ekki nýjasta stöðuga LTS (Langtímastuðningur) útgáfa (v1.8.13, frá og með maí 2016).

Í þessari kennslu munum við sýna þér hvernig á að setja upp Django v1.8.13 þar sem framlengdur stuðningur þess er tryggður að minnsta kosti til apríl 2018.

Ráðlögð aðferð til að setja upp Django er í gegnum pip, vinsælt tól til að stjórna Python pakka. Einnig, til þess að búa til einangrað Python umhverfi og forðast árekstra milli verkefna sem gætu krafist mismunandi útgáfur af hugbúnaðarháðum, er mjög hvatt til notkunar sýndarumhverfis.

Verkfærin sem eru notuð til að búa til og stjórna sýndar Python umhverfi kallast virtualenv.

Fylgdu þessum skrefum til að framkvæma uppsetninguna:

1. Fyrir Fedora-undirstaða dreifingar (nema í Fedora sjálfri), virkjaðu EPEL geymsluna fyrst:

# yum update && yum install epel-release

2. Settu upp pip og virtualenv:

# yum install python-pip python-virtualenv
OR 
# dnf install python-pip python-virtualenv
# aptitude update && aptitude install python-pip virtualenv

3. Búðu til möppu til að geyma upphafsverkefnið þitt.

# mkdir ~/myfirstdjangoenv
# cd ~/myfirstdjangoenv

4. Búðu til og virkjaðu sýndarumhverfi:

# virtualenv myfirstdjangoenv

Ofangreind skipun býr til fullt af skrám og undirmöppum í ~/myfirstdjangoenv og setur í grundvallaratriðum upp staðbundið afrit af Python og pip innan núverandi vinnumöppu. Næst þurfum við að virkja sýndarumhverfið sem við bjuggum til:

# source myfirstdjangoenv/bin/activate

5. Taktu eftir því hvernig skipanakvaðningurinn breytist eftir síðustu skipunina. Nú er kominn tími til að setja upp Django:

Athugaðu að skjámyndin hér að neðan var tekin í fyrri útgáfu af þessari kennslu, en væntanleg framleiðsla er sú sama þegar Django 1.8.13 er sett upp):

# pip install Django==1.8.13

Þú getur athugað Django útgáfuna með því að ræsa Python skel úr núverandi vinnuskránni þinni:

# python
>>> import django
>>> print(django.get_version())

(Aftur, ofangreind skipun ætti að skila 1.8.13 þegar þú skoðar núverandi Django útgáfu).

Til að hætta í Python hvetjunni skaltu slá inn:

>>> exit() 

og ýttu á Enter. Næst skaltu slökkva á sýndarumhverfinu:

# deactivate

Vinsamlegast athugaðu að á meðan sýndarumhverfið er óvirkt er Django ekki í boði:

Hvernig á að búa til fyrsta verkefni í Django

Til að búa til verkefni í sýndarumhverfinu sem við bjuggum til áðan þarf að virkja það:

# source myfirstdjangoenv/bin/activate

Næst mun ramminn búa til alla möppuskipulagið til að geyma verkefnið þitt. Til að gera þetta þarftu að hlaupa.

# django-admin startproject myfirstdjangoproject

Ofangreind skipun mun búa til möppu sem heitir myfirstdjangoproject inni í núverandi vinnumöppu þinni.

þar sem þú finnur skrá sem heitir manage.py (tól sem hjálpar þér að stjórna verkefninu þínu síðar) og aðra undirmöppu (~/myfirstdjangoenv/myfirstdjangoproject/myfirstdjangoproject). Þessi síðasta undirskrá mun þjóna sem ílát fyrir verkefnisskrárnar.

Þó að restin af skránum sé raunverulegt skynsamlegt eftir að við höfum farið yfir Python til að byrja að skrifa alvöru vefforrit, þá er það þess virði og vel að taka eftir lykilskránum sem finnast inni í verkefnamöppu:

  1. myfirstdjangoproject/__init__.py: Þessi tóma skrá segir Python að þessi mappa ætti að teljast Python pakki.
  2. myfirstdjangoproject/settings.py: Sérstakar stillingar fyrir þetta Django verkefni.
  3. myfirstdjangoproject/urls.py: TOC (Table Of Contents) af Django-knúnu síðunni þinni.
  4. myfirstdjangoproject/wsgi.py: Aðgangspunktur fyrir WSGI-samhæfða vefþjóna til að þjóna verkefninu þínu.

# ls 
# ls -l myfirstdjangoproject
# ls -l myfirstdjangoproject/myfirstdjangoproject

Að auki er Django með léttan innbyggðan vefþjón (skrifaður í Python svipað og Python SimpleHTTP, hvað annað?) sem hægt er að nota til að prófa forritin þín meðan á þróunarferlinu stendur án þess að þurfa að takast á við það verkefni að setja upp vefþjón kl. þetta tiltekna stig.

Hins vegar þarftu að vita að þetta hentar ekki fyrir framleiðsluumhverfi - bara fyrir þróun. Til að ræsa nýstofnað verkefnið þitt skaltu breyta núverandi vinnumöppu í gámaskrána fyrir verkefnið þitt (~/myfirstdjangoenv/myfirstdjangoproject) og keyra:

# python manage.py runserver 0.0.0.0:8000

Ef þú lendir í eftirfarandi villu:

You have unapplied migrations; your app may not work properly until they are applied.
Run 'python manage.py migrate' to apply them.

Gerðu það sem segir:

# python manage.py migrate

og ræstu síðan þjóninn aftur:

# python manage.py runserver 0.0.0.0:8000

Við munum fjalla um hugtakið fólksflutninga í næstu greinum í þessari röð, svo þú getur hunsað villuboðin í bili.

Í öllum tilvikum geturðu breytt sjálfgefna gáttinni þar sem innbyggði vefþjónninn mun hlusta. Með því að nota 0.0.0.0 sem netviðmót til að hlusta á leyfum við öðrum tölvum á sama neti að fá aðgang að notendaviðmóti verkefnisins (ef þú notar 127.0.0.1 í staðinn muntu aðeins hafa aðgang að notendaviðmótinu frá localhost).

Þú getur líka breytt höfninni í aðra sem þú velur, en þú þarft líka að ganga úr skugga um að umferð um slíka höfn sé leyfð í gegnum eldvegginn þinn:

# firewall-cmd --add-port=8000/tcp
# firewall-cmd --permanent --add-port=8000/tcp

Auðvitað, það segir sig sjálft að þú þarft að uppfæra leyfða höfn ef þú velur að nota aðra á meðan þú ræsir léttan vefþjóninn.

Þú ættir að sjá eftirfarandi úttak í flugstöðinni þinni:

# python manage.py runserver 0.0.0.0:8000

Á þessum tímapunkti geturðu opnað uppáhalds vafrann þinn og farið að IP tölu vélarinnar þar sem þú settir upp Django og síðan gáttarnúmerið. Í mínu tilfelli er það Debian Jessie kassi með IP 192.168.0.25 og hlustar á port 8000:

http://192.168.0.25:8000

Þó að það sé frábært að við gátum klárað fyrstu uppsetningu verkefnis, þá er enn mikil vinna eftir, eins og fram kemur í skilaboðunum hér að ofan.

Samantekt

Í þessari handbók höfum við útskýrt hvernig á að setja upp og stilla sýndarumhverfi fyrir Django, fjölhæfur opinn uppspretta veframmi byggður á Python.

Burtséð frá því hvort þú ert forritari eða kerfisstjóri, þá viltu setja bókamerki á þessa grein og restina af þessari röð vegna þess að líkurnar eru á því að á einhverjum tímapunkti eða öðrum þarftu að íhuga þörfina á slíku tæki fyrir dagleg verkefni þín.

Í eftirfarandi greinum í þessari röð munum við ræða hvernig við getum byggt á því sem við höfum þegar áorkað til að búa til einfalt en samt hagnýtt vefforrit með Django og Python.

Eins og alltaf skaltu ekki hika við að senda okkur athugasemd ef þú hefur spurningar um þessa grein eða tillögur til úrbóta. Okkur hlakkar til að heyra frá þér!