Az alapvető módja annak, hogy létrehozzunk egy django projektet az ubuntuban

Az alapvető módja annak, hogy létrehozzunk egy django projektet az ubuntuban
Az alapvető módja annak, hogy létrehozzunk egy django projektet az ubuntuban

A bejegyzés célja, hogy leírja az alapvető és egyszerű módszereket egy Django projekt létrehozásához tiszta Ubuntu számára.

A súlyos gyártási rendszerek természetesen pontosabb hangolást igényelnek. Ha nagy projektekről beszélünk, akkor beszélni fognak a konténerekről, több automatizálásról, nagyobb hangsúlyt fektetnek a biztonságra és finomhangolják az egyes szoftverkomponenst.

Szinte biztos módja deploya, meghatározásának módját a beállításokat a projekt más lesz, és a megközelítés dolgozó statikus és médiafájlokat más lesz, például fogják használni CDN, AWS S3 és így tovább.

Azonban ebben a bejegyzésben szeretnék segíteni azoknak, akik foglalkoztak a Django, akkor is származhat PHP és keres információt, hogyan kell kezdeni, és hogyan kell beállítani az első termék szerver django-projekt, amely korábban csak futtatni a helyi gépen segítségével python manage.py runerver

1. lépés: Válasszon fogadást

  • DigitalOcean - VPS 5 dollárért 512 MB RAM és 20 GB szabad hely a lemezen.
  • Linode.com - VPS 10 dollárért 2GB RAM és 24GB lemezterület.
  • Webfaction.com - Megosztott vagy VPS a díjcsomagtól függően. 10 $ - 1 GB RAM, 100 GB SSD meghajtó. Egy kényelmes panel, amely segít bármilyen típusú webhely üzemeltetésében, a levelezés és a DNS kezelésében. Az egyik első házigazdája, amely nem csak php oldalakat szolgáltatott. Webfunkció esetén nem kell foglalkoznia a kiszolgáló konfigurációjával, az adatbázisok és a webszerver nem szerepel a RAM-díjszabásban.

2. lépés: A kiszolgáló konfigurálása

A python projekt futtatásához szükségünk van:

A python 3.5 alapértelmezés szerint nem kerül bele a telepítő ubuntumba, ezért az egyedi ppa-adattárból teszünk.

A nginx olyan webszerver, amely proxy kéréseket küld a django alkalmazásunknak, valamint szolgálja a statikus és a médiafájlok visszatérését.

postgresql - a legmegfelelőbb relációs adatbázis, sok különböző tulajdonsággal.

a felügyelő egy folyamatvezérlő rendszer. Python-projektünket futtatjuk, szükség esetén újraindítjuk, és vele együtt kezeljük és irányítjuk az alkalmazások futását.

rabbitmq - üzenet bróker. Átveszi és átirányítja az üzeneteket. Szükséges tárolni az üzenet sorát, ami akkor szükséges, ha a zellert a django projekt erőforrás-igényes funkcióinak aszinkron módon történő végrehajtására használják.

git - verzió vezérlő rendszer. Az Ubunutu alapértelmezés szerint egy nagyon régi verziót tartalmaz a gita-ból, ezért azt a ppa tárolóból tesszük.

Ezenkívül néhány kényelmes segédprogramot készítünk, mint a mc, a htop és a smem.

A példában szereplő összes konfigurációs parancsot be kell írni a root felhasználóból. Ehhez javasoljuk a bash parancsot a felügyelő nevében:

és írja be a jelszavát.

Adjuk hozzá a szükséges csomagforrásokat.

Frissítjük az adatokat a tárolókról, majd frissítjük az összes telepített csomagot az elérhető frissítésekkel

Állítsa be a kiszolgáló időzónáját, és válassza ki a helyi beállítást

A Python3-hoz kapcsolódó csomagok telepítése

Telepítsen postgresql-t és néhány kiegészítő segédprogramot és könyvtárat

Most hozzon létre egy felhasználót, amely alatt futtatjuk a projektünket. Nevezzük a webhelyeket.

Számára akkor létrehozza a / oldalakat generál RSA kulcsot, amely szükséges lehet, hogy a beállítás GitHub / bitbucket hogyan kell telepíteni gombot, hogy csak olvasható hozzáférést a szerverhez repoztoriyu telepíteni a projekt.

Kész. Készítettünk egy szervert, létrehoztunk egy felhasználót és egy könyvtárat, amelyben a projektek élni fognak és elkezdhetjük a projekt elindítását!

A fent felsorolt ​​összes parancsot egy külön bash parancsfájlba fordítottam, amelyet az Ubuntu 16 tiszta telepítésével tölthet le és futtathat.

Ehhez a fenti parancsok helyett írja be a két fájlt: egyet a fájl letöltéséhez, a második pedig - elindításához.

Ne felejtse el, hogy futtatni kell a gyökérből.

Ez a parancsfájl elvégzi Önnek a szerver kezdeti konfigurációját.

Miután befejeztük a kiszolgáló telepítését és konfigurálását, most elvégezhetjük a django projekt munkáját.

3. lépés: Telepítse a Django projektet

A / sites könyvtár tartalmazza azokat az alkönyvtárakat, amelyekben a django projekteket fogjuk látni.

Létrehozzuk az első könyvtárat django projektünkhöz.

Itt minden parancs a gyökérből indul ki. Mivel a projektfájlok azon felhasználónak kell tartoznia, ahonnan a projektet futtatják, nevezetesen a webhelyeket, a telepítés összes manipulációját követően megváltoztatjuk a fájlok és könyvtárak tulajdonosát a kívántra.

A tutorial könyvtárban 4 katalógust hoztunk létre naplók, statikus fájlok, médiafájlok és konfigurációk számára. Az utóbbi esetben a felügyelő és a nginx számára a projekt konfigurációs fájljait adjuk meg

Most hozz létre egy virtuális környezetet a python projekthez.

Virtuális környezetek (virtualenv) szükségesek ahhoz, hogy elszigeteljék az egyes projektekhez telepített python csomagokat. A virtualenv használatával számos különböző python-projektet telepíthet, és nem zavarja egymást, ha szüksége van egy csomag egy változatára, és egy másiknak szüksége van egy másikra.

Az env könyvtárban található virtuális környezet létrejön.

Hozzon létre egy konfigurációs fájlt.

Jobban szeretném tárolni őket a projektkönyvtárban, hogy az összes kapcsolódó fájlt a projekthez egy helyen lehessen megtekinteni, nem pedig a kiszolgálón keresi őket. Ehhez javaslom a configs alkönyvtárat a projektkönyvtárban.

Íme egy példa a nginx.conf config:

Ez config érdemes odafigyelni arra, hogy a Django-projekt indult port 9023 és webszerverem lesznek tárolva a naplók / nginx_access.log fájl

Most a felügyeleti konfiguráció, a supervisor.conf

Mielőtt alkalmaznánk ezeket a beállításokat, magunknak kell létrehoznunk a projektet.

Amint az a supervisor.conf konfigurációból látható, azt javaslom, hogy tárolja a projektet a projektkönyvtárban (/ sites / tutorial / project).

Ebben a cikkben django-projektet hozunk létre a django-admin.py segédprogram használatával

Ehhez meg kell aktiválnunk a virtuális környezetet, és fel kell tennünk Django-t, ugyanakkor gunicornot, ami elindítja a projektünket.

A projekt virtuális környezetében van egy django-admin nevű segédprogram. Hozzon létre egy alapvető Django projektet.

A parancs végrehajtása után megvan a projektkönyvtár.

Most alkalmazhatja konfigurációinkat.

Ezekkel a sorokkal szimbolikus linkeket (szimbolikus linkeket) bonyolítottunk a konfigurációnkra azokban a könyvtárakban, ahol a nginx és a felügyelő elvárja az elérhető alkalmazáskonfigurációkat. A felügyelő számára fontos, hogy a konfigurációs fájlnak .conf kiterjesztése legyen. Ellenkező esetben nem veszi figyelembe. A nginx esetében ez nem fontos, de az egységesség érdekében mindkét esetben ugyanazt a névformátumot javaslom.

Most, hogy a fájlok létrejöttek, mindkét alkalmazásnak ismernie kell őket.

Most a nginx átirányítja a kérelmet az alkalmazásához a 9023-as porton, és a felügyelő megpróbálja elindítani.

Hadd hívjam fel a figyelmet arra a tényre, hogy egy igazi projektet csinálni még néhány lépést, például, hogy létrehoz egy bázis a postgres, a Django-config regisztrálni a projekt útját a statikus fájlokat és az URL-t a számukra. Ebben az esetben a beállítások így fognak kinézni:

A fenti beállítások megadása után statikus fájlokat gyűjthet össze egy statikus könyvtárban, amelyet a nginx megadhat.

Ehhez a projekt virtuális környezetével (source / sites / tutorial / env / bin / activate) aktiválnia kell a következő parancsokat:

Annak érdekében, hogy a webhely működjön, nyissa meg a konzolböngészőben:

A Django projekt demo módban lesz látható.

Ha egy webhelyet nyit a számítógépről, valószínűleg meg kell változtatnia a nginx beállításokat az IP-kiszolgáló kiszolgáló_neve szakaszában történő írással.

Bónusz: azok számára, akik befejezték a cikk olvasását, a cikk második részét a második szkriptben választottam ki, amely a telepítési szkript után indítható. Ő elvégzi az alapvető beállításokat az Ön számára. Csak a webhely munkáját kell tesztelnie.

A szkriptet közvetlenül a letöltés után futtathatja a kiszolgálón!

A két szkript futása során hibákat észleltem amiatt, hogy az apt telepítését egy másik futási folyamat blokkolja. Ez annak köszönhető, hogy az automatikus frissítések szerepelnek az ubuntuban, és a felügyelet nélküli upgr folyamat látható a folyamatlistában (ps aux command). Ha látod ott - várj a munkád végéig, és futtatod a kiszolgáló telepítőszkriptjét. Ez nem vonatkozik a projekt telepítési szkriptjére.

Kérdése van a cikkhez? Kérdezze meg őket a megjegyzésekben!

Kapcsolódó cikkek