Zpět na blog

Instalace webového frameworku Django na Ubuntu 20.04

Instalace webového frameworku Django na Ubuntu 20.04

Django je pokročilý webový framework, který umožňuje rychlý vývoj bezpečných a snadno udržovatelných webových stránek. Je to bezplatný framework s otevřeným zdrojovým kódem napsaný v jazyce Python. Django je také populární pro další vlastnosti, jako je výkon, bezpečnost, škálovatelnost, přenositelnost a udržovatelnost.

Tento návod vám ukáže, jak nainstalovat Django a nastavit jednoduchou webovou aplikaci na Ubuntu 20.04.

Django na Ubuntu

Existuje několik způsobů, jak nainstalovat Django do systému. Každá metoda vyhovuje jinému cíli.

  • Globální instalace: Django je snadno dostupné z oficiálních repozitářů balíčků Ubuntu. Můžeme ho nainstalovat přímo pomocí správce balíčků APT. I když je tato metoda instalace jednoduchá, nabízí méně flexibility než jiné metody. Navíc nemusí obsahovat nejnovější verzi frameworku.
  • Instalace pomocí pip ve virtuálním prostředí: Pomocí nástrojů jako venv a virtualenv, můžeme vytvořit virtuální prostředí a nainstalovat Django tam. Výhodou tohoto přístupu je, že neovlivňuje zbytek systému. Umožňuje také přizpůsobení a balíčky pro jednotlivé projekty. Je to nejpraktičtější a nejdoporučovanější způsob práce s Django.
  • Instalace vývojové verze Django: Django je k dispozici také na GitHub. Nejnovější vývojová verze bude mít nejnovější funkce/opravy. To je však vykoupeno potenciálními problémy s výkonem a stabilitou.

Tento návod předpokládá, že máte správně nakonfigurovaný server Ubuntu. Pokud ještě nemáte server Ubuntu, můžete postupovat podle našeho návodu na jak nastavit vlastní server Ubuntu.

Instalace Django na Ubuntu

1. Globální instalace pomocí správce balíčků

Django je snadno dostupné z oficiálních repozitářů balíčků. Proces instalace je poměrně přímočarý. Nejprve aktualizujte index balíčků APT:

Dále zkontrolujte nainstalovanou verzi Pythonu. Ve výchozím nastavení je Ubuntu 20.04 dodáváno s Pythonem 3.8:

Nyní jsme připraveni nainstalovat Django:

Můžeme ověřit, zda byla instalace úspěšná. Spuštěním následujícího příkazu zkontrolujte verzi Django:

django-admin

Tím se ověří, že je Django úspěšně nainstalováno. Upozorňujeme, že tato verze Django není nejnovější stabilní verzí. V době psaní tohoto článku je nejnovější dostupná verze Django v3.2.5 (LTS verze).

2. Instalace Django pomocí pip (ve virtuálním prostředí)

Toto je doporučený způsob instalace Django, protože má největší flexibilitu. Virtuální prostředí vygenerujeme pomocí modulu venv, který je součástí standardní knihovny Pythonu 3. Umožňuje vám vytvářet virtuální prostředí Pythonu a instalovat balíčky Pythonu bez toho, aby docházelo ke změnám jinde v systému. Můžete mít celou řadu virtuálních prostředí s jedinečnými konfiguracemi.

Pojďme začít. Nejprve potřebujeme moduly Pythonu pip a venv:

Moduly jsou úspěšně nainstalovány. Nyní vytvoříme vyhrazený adresář pro virtuální prostředí:

Dále změňte aktivní adresář na nový adresář:

Nyní můžeme říct modulu venv, aby v tomto adresáři vytvořil virtuální prostředí. Pokud jde o název prostředí, měl by být popisný:

Modul venv vytvoří kopii Pythonu a pip do izolované adresářové struktury v adresáři projektu. Bude obsahovat adresář se zvoleným názvem, který obsahuje souborovou hierarchii, kde jsou nainstalovány všechny balíčky.

Chcete-li nainstalovat další balíčky, musíme prostředí aktivovat:

Výzva shellu by se měla změnit na něco takového:

sample_project

Ve virtuálním prostředí nyní můžeme nainstalovat Django:

Ověřte, zda byla instalace úspěšná:

Pro opuštění virtuálního prostředí spusťte následující příkaz:

deactivate

3. Instalace vývojové verze Django

Vývojová verze Django je přímo dostupná na GitHub. Budeme používat git ke klonování a nasazení ve virtuálním prostředí.

Nejprve se ujistěte, že máme nainstalované potřebné nástroje. Následující příkaz nainstaluje venv a pip (moduly Pythonu) a git:

Dále naklonujte repozitář Django. Bude obsahovat všechny nejnovější funkce a opravy chyb (na úkor stability). Naklonujeme jej do adresáře ~/django-dev:

Změňte aktuální adresář na naklonovaný repozitář:

Poté vytvořte virtuální prostředí pomocí Python venv modulu:

Poté aktivujte virtuální prostředí:

Nyní můžeme nainstalovat Django, které jsme naklonovali z GitHubu. Zde příznak -e odkazuje na „upravitelný“ (editable) režim, který umožňuje instalaci ze systému správy verzí:

Nakonec ověřte instalaci:

django-admin --version

Ukázkový projekt Django

Dosud jsme si ukázali, jak nainstalovat Django do systému. Nyní je čas uvést Django do praxe. V této části si ukážeme, jak vytvořit ukázkový projekt Django. Ukázkový projekt bude vytvořen ve virtuálním prostředí.

Vytvořte adresář pro ukázkový projekt:

Změňte aktuální adresář na adresář projektu:

Poté použijte venv modul k vytvoření virtuálního prostředí Pythonu:

Virtuální prostředí je připraveno. Aktivujte prostředí:

Installing Django image 5

V prostředí můžeme nainstalovat Django:

Můžeme použít django-admin k vytvoření základu projektu. Zde se bude ukázkový projekt jmenovat sampleproject. Projekt bude mít v adresáři prostředí vlastní adresář, který bude obsahovat všechny potřebné soubory.

  • manage.py: Správcovský skript, který spravuje různé úkoly specifické pro Django.
  • ukázkový projekt: Adresář s názvem projektu, který obsahuje samotný kód projektu.

Nechceme však pavučinu příliš mnoha vnořených adresářů. Proto řekněte Djangu, aby soubory a adresáře umístilo do aktuálního adresáře:

sampleproject

Dalším krokem je migrace databáze. Ve výchozím nastavení Django používá SQLite. Migrace aplikují jakékoli změny provedené v modelech Django na schéma databáze. Pro migraci databáze spusťte následující příkaz:

Nakonec vytvoříme administrátorského uživatele pro použití administrátorského rozhraní Django. Spusťte následující příkaz:

Požádá o uživatelské jméno, e-mailovou adresu a heslo pro uživatele.

Installing Django image 4

ALLOWED_HOSTS v nastavení Django

Chcete-li aplikaci otestovat, musíme upravit určitou direktivu v nastavení Django. Otevřete soubor settings.py v textovém editoru:

Zajímá nás direktiva ALLOWED_HOSTS. Popisuje seznam adres nebo doménových jmen, které se mohou připojit k instanci Django. Jakýkoli příchozí požadavek od hostitele, který není na seznamu, vyvolá výjimku. Django to vyžaduje, aby se zabránilo určitým třídám bezpečnostních zranitelností.

V hranatých závorkách uveďte IP adresy nebo doménové názvy spojené se serverem Django. Každá položka bude uvedena v uvozovkách a oddělena čárkou (,). Struktura této direktivy by vypadala takto:

ALLOWED_HOSTS

Uložte seznam a zavřete editor.

Testování serveru

Nyní můžeme spustit server pro nasazení Django. Zobrazí nový projekt Django. Upozorňujeme, že by měl být používán pouze pro vývojové účely. Pro plnohodnotné nasazení postupujte podle oficiální příručky Django pro nasazení.

Před přístupem k vývojovému serveru se ujistěte, že firewall umožňuje přístup k portu 8000. Pokud postupujete podle nastavení serveru Ubuntu průvodce, pak řekněte UFW, aby otevřel port 8000 pro komunikaci:

sudo

UFW je běžný firewall dostupný ve všech hlavních distribucích Linuxu. Zde je průvodce vysvětlující různé základy UFW. Vývojový server je nyní připraven ke spuštění. Spusťte server:

python manage.py runserver

Dále navštivte IP adresu serveru na portu 8000 ve webovém prohlížeči. Dostanete se na uvítací stránku Django:

Installing Django image 3

Pro přístup do administračního panelu Django přidejte /admin/ na konec URL:

Pro přístup do sekce administrace zadejte uživatelské jméno a heslo administrátora:

Installing Django image 2

Installing Django image 1

Server můžete zastavit stisknutím CTRL-C v terminálu.

Závěrečné myšlenky

Projekt Django nabízí strukturální základ pro návrh kompletnějšího webu. Poskytuje hlavní nástroje potřebné k provozu webové aplikace. Využití webového frameworku, jako je Django, vám umožní rychlejší vývoj projektu a věnovat více času jedinečným aspektům vaší aplikace.

Příjemnou práci s počítačem!

author

Hark Labs

Autor · CloudSigma

Preslav Dobrev je kreativní designér ve společnosti CloudSigma, který se zaměřuje na konzistentní firemní identitu prostřednictvím tradičních i inovativních marketingových kanálů. Je zdatný v propojování umělecké vize se strategickým marketingem za účelem vytváření působivých příběhů značky.

Komentáře

Zatím žádné komentáře. Buďte první.