Právě jste tedy v Pythonu dokončili jednoduchý web portfolia a chcete jej umístit pomocí bezplatného hostování. Slyšeli jste o bezplatném hostování Heroku, ale zcela nerozumíte technickým problémům.
Tato příručka vám pomůže projít celým procesem bezplatného hostování vašeho webu v Pythonu na Heroku mnohem jednodušším způsobem. Předpokládáme, že máte základní znalosti Pythonu a alespoň jeden z jeho rámců, nejlépe Django.
Proč si vybrat Heroku?
Heroku je poskytovatel webhostingu Platform as a Service (PaaS), který provozuje svou infrastrukturu na něčem, čemu říká Dynos. Udržuje vás zaměřené na nasazení, zatímco se stará o potíže s údržbou a budováním vaší webové infrastruktury.
Pokud si nemůžete dovolit placený hosting, ale chcete rychle sestavit online portfolio, možná byste měli zvážit jeho hostování na Heroku. Kromě toho, že přicházíte zdarma, je velmi rychlé umístit svůj web na Heroku.
Samozřejmě existují i jiné platformy, kde můžete bezplatně hostovat své webové stránky Pythonu, například Amazon Web Services a PythonAnywhere. Proces hostování na Heroku je však snadný zejména pro lidi bez předchozí znalosti nasazení.
Pokud na Heroku hostujete web zdarma, nemusíte mít nutně název domény. Vše, co potřebujete, je zadat název aplikace na hostitelské platformě. Heroku pak vytvoří app.herokuapp.com vyhledávač pro vás. Když využíváte tuto bezplatnou službu, běží váš web na Heroku Dynos.
Pokud se později rozhodnete zvětšit a získat název domény, je to stejně snadné a rychlé, ale musíte za něj zaplatit. Převážné náklady na údržbu upgradu mohou způsobit, že si to promyslíte, ale stojí to za peníze, pokud jste rozhodnuti do projektu investovat více.
Pojďme nyní prozkoumat, jak hostovat své webové stránky Pythonu zdarma na Heroku. Toto je založeno na Pythonu verze 3.7 a Django verze 2.1.7.
Nastavit Git a Heroku
Nejprve si stáhněte Git z web git-scm. Jsou zde vysvětleny různé příkazy a zvraty pro instalaci Gitu ve všech OS.
Po instalaci Git musíte také nastavit účet u Heroku na Stránka registrace Heroku pokud už žádný nemáte.
Poté si stáhněte a nainstalujte Heroku CLI z webu Heroku. Heroku CLI vám umožňuje komunikovat se svým úložištěm pokaždé, když potřebujete provést změny ve vaší aplikaci.
Pokud ještě nejste obeznámeni s příkazy Gitu, měli byste se podívat na naše úvod do správy verzí pomocí Git.
Nastavit projekt Django
Pokud nemáte nastavený projekt Django a chcete si to vyzkoušet pomocí tohoto tutoriálu, otevřete příkazový řádek a vytvořit virtuální prostředí pokud ještě nemáte. Jakmile je virtuální prostředí připraveno, použijte tento příkaz k instalaci rozhraní Django:
Prozkoumáme nejlepší způsoby, jak vytvořit a spravovat vaše virtuální prostředí Pythonu.
pip install django == 2.1.7
Po instalaci Django ve virtuálním prostředí spusťte následující příkaz a spusťte nový projekt Django:
django-admin.py startproject název_projektu
Dále vytvořte novou aplikaci Pythonu. Chcete-li to provést, migrujte do kořenové složky projektu na CMD a spusťte:
python manage.py startapp název_aplikace
Nezapomeňte vyměnit název projektu a název_aplikace s vašimi preferovanými jmény.
Potřebujete Gunicorn modul, takže byste měli také spustit pip nainstalujte gunicorn. Poté přidejte Gunicorn do seznamu nainstalovaných aplikací v settings.py, Jak je ukázáno níže:
Toto je jen povrchní úvod do vytváření aplikace Django. Ať už je vaše aplikace připravená, nebo ji právě vytváříte, zajistěte, aby váš běh python manage.py migrovat k vytvoření vaší databáze.
Nyní byste měli mít spuštěnou aplikaci Python ve vašem rámci Django. Nyní se ponoříme do našeho hlavního cíle.
Nasazení vaší aplikace do Heroku
Chcete-li úspěšně nasadit svoji aplikaci do Heroku, musíte nastavit a requirements.txt soubor. Chcete-li jej nastavit, spusťte na svém CMD následující:
pip freeze> requirements.txt
Tato čára vytváří a .txt soubor, který obsahuje všechny balíčky používané k poskytování projektu. Heroku se během nasazení podívá na tento soubor a tyto balíčky nainstaluje automaticky.
Dalším důležitým souborem, který musíte zadat, je Procfile. To řekne Heroku příkazy, které se mají spustit při inicializaci aplikace. Tento soubor však musíte vytvořit explicitním vytvořením nového textového souboru s názvem Procfile v kořenovém adresáři projektu. Ujistěte se, že tento soubor nemá příponu souboru; jinak to nebude fungovat.
Chcete-li odstranit příponu souboru z Procfile ve Windows, otevřete složku v Průzkumníku souborů a klikněte na Pohled na horním panelu nástrojů a zkontrolujte Přípony názvů souborů box. Poté uvidíte přípony všech souborů, včetně .txt rozšíření pro Procfile. Klepněte pravým tlačítkem na Procfile a vybrat Přejmenovat, pak jednoduše odstraňte .txt prodloužení a stisknutí Enter.
Dále otevřete Procfile a přidejte následující řádek a nahraďte jej název projektu s názvem, který se vztahuje na váš projekt:
web: gunicorn project_name.wsgi
Volitelně můžete také vytvořit a runtime.txt soubor. Otevřete soubor a zadejte verzi Pythonu následujícím způsobem:
python-3.7.6
Takto říkáte Heroku verzi Pythonu, na které běží vaše aplikace. Pokud tento soubor nezadáte, použije Heroku ve výchozím nastavení pouze nejnovější verzi Pythonu.
Dále se na příkazovém řádku přihlaste ke svému účtu Heroku spuštěním tohoto příkazu:
heroku přihlášení
Tento příkaz otevře váš výchozí prohlížeč na přihlašovací stránku Heroku, kde můžete zadat své přihlašovací údaje.
Chcete-li vytvořit aplikaci na Heroku, zadejte následující řádek:
heroku create ademosapp2
Nahradit ademosapp2 s preferovaným názvem aplikace. Pokud se váš vybraný název aplikace používá, zobrazí se zpráva s výzvou k výběru nového názvu.
Na přihlašovací stránce se kliknutím na logo Heroku přihlaste na svůj hlavní panel Heroku. Nyní byste měli vidět aplikaci, kterou jste právě vytvořili.
Dále otevřete preferovaný textový editor do umístění projektu a přejděte do projektu settings.py. V settings.py soubor, změňte Povolený hostitel na [*]díky tomu bude vaše aplikace přístupná jakémukoli globálnímu hostiteli.
Nyní přejděte do řídicího panelu Heroku a klikněte na nově vytvořenou aplikaci a poté na nastavení. V nastavení přejděte dolů a klikněte na Přidat buildpack. Pak vyberte Python jako svůj buildpack a klikněte Uložit změny.
Dále se přesuňte zpět na svůj CMD a spusťte následující kód pro instalaci Heroku do projektu:
pip nainstalujte django-heroku
Nyní přidejte nově nainstalovaný balíček do requirements.txt soubor spuštěním:
pip freeze> requirements.txt
Poté otevřete projekt settings.py soubor a typ:
importovat django_heroku
Také na posledním řádku settings.py, aktivovat django-heroku přidáváním:
django_heroku.settings (locals ())
# ujistěte se, že tento řádek po nasazení okomentujete
Jakmile je hotovo, spusťte vzdálené úložiště zadáním následujícího do příkazového řádku:
heroku init
Dále vytvořte úložiště aplikací Heroku spuštěním:
heroku git: remote -a ademosapp2 #replace ademosapp2 s názvem vaší aplikace
Chcete-li zkontrolovat soubory, které je třeba potvrdit, spusťte:
stav git
Dále zadejte následující příkaz a přidejte všechny změny do svého úložiště:
git přidat - vše
Jakmile jsou změny přidány, potvrďte své změny Heroku spuštěním příkazu:
git commit -m "initial-commit"
Všimněte si, že "initial-commit" můžete použít libovolné jméno, které se vám líbí.
Dále byste měli deaktivovat collectstatic pomocí následujícího:
heroku config: set DISABLE_COLLECTSTATIC = 1
V opačném případě můžete během procesu nasazení narazit na problémy.
Chcete-li své soubory poslat do svého úložiště Heroku, použijte příkaz:
git push heroku master
To posune všechny vaše soubory do Heroku a zpřístupní aplikaci odkudkoli. Chcete-li zobrazit nově nasazenou aplikaci, přejděte na https://app_name.herokuapp.com ve vašem prohlížeči, nahrazení název_aplikace s názvem vaší aplikace.
Může Heroku hostit aplikaci, která nefunguje v Pythonu?
Na Heroku můžete hostovat různé verze aplikace; stejné procesy Git, které jsme zde zahrnovali, fungují i pro jiné jazyky kromě Pythonu. Musíte provést jen malé změny, například resetovat balíček sestavení.
Ačkoli vám Heroku nabízí bezplatný hosting, všichni víme, že bezplatný obsah má určitá omezení. Pokud však neočekáváte, že váš web bude mít větší provoz, může být dobrou volbou bezplatný hosting Heroku.
Chcete se naučit programovat, ale nevíte, kde začít? Tyto projekty a výukové programy pro začátečníky vás začnou.
- Programování
- Web hosting
- Programování
- Krajta
Idowu je vášnivý pro cokoli inteligentního a produktivního. Ve svém volném čase si hraje s kódováním a když se nudí, přepne se na šachovnici, ale také rád občas vybočuje z rutiny. Jeho vášeň ukázat lidem cestu kolem moderních technologií ho motivuje k dalšímu psaní.
Přihlaste se k odběru našeho zpravodaje
Připojte se k našemu zpravodaji s technickými tipy, recenzemi, bezplatnými elektronickými knihami a exkluzivními nabídkami!
Ještě jeden krok…!
V e-mailu, který jsme vám právě poslali, potvrďte svou e-mailovou adresu.