Så du har lige afsluttet et simpelt portfolio-websted med Python, og du vil sætte det op ved hjælp af gratis hosting. Du har hørt om Heroku's gratis hosting, men du forstår ikke helt de involverede tekniske forhold.

Denne guide hjælper dig med at arbejde igennem hele processen med at være vært for dit Python-websted gratis på Heroku på en meget enklere måde. Vi antager, at du har en grundlæggende viden om Python og mindst en af ​​dens rammer, helst Django.

Hvorfor vælge Heroku?

Heroku er en PaaS-udbyder (Platform as a Service), der kører sin infrastruktur på noget, den kalder Dynos. Det holder dig fokuseret på implementering, mens det tager sig af vanskelighederne med at vedligeholde og opbygge din webinfrastruktur.

Hvis du ikke har råd til betalt hosting, men ønsker at oprette en online portefølje hurtigt, kan du måske overveje at være vært på Heroku. Ud over at komme uden beregning er det ret hurtigt at oprette dit websted på Heroku.

Der er selvfølgelig andre platforme, hvor du kan være vært for dit Python-websted gratis, såsom Amazon Web Services og PythonAnywhere. Men processen med at hoste på Heroku er let specielt for folk uden forudgående kendskab til implementering.

instagram viewer

Når du er vært for et websted gratis på Heroku, behøver du ikke nødvendigvis have et domænenavn. Alt hvad du behøver er at angive dit appnavn på hostingplatformen. Heroku opretter derefter en app.herokuapp.com locator til dig. Når du bruger denne gratis tjeneste, kører dit websted på Heroku Dynos.

Hvis du senere beslutter at skalere op og få et domænenavn, er det lige så let og hurtigt, men du skal betale for det. De overvældende omkostninger ved vedligeholdelse af opgraderingen kan få dig til at genoverveje det, men det er pengene værd, hvis du er fast besluttet på at investere mere i projektet.

Lad os nu undersøge, hvordan du er vært for dit Python-websted gratis på Heroku. Bemærk, at dette er baseret på Python version 3.7 og Django version 2.1.7.

Opsæt Git og Heroku

For at starte skal du downloade Git fra git-scm-websted. De forskellige kommandoer og vendinger til at få Git installeret på alle operativsystemer forklares der.

Efter installation af Git skal du også oprette en konto hos Heroku på Heroku-tilmeldingsside hvis du ikke allerede har en.

Derefter skal du downloade og installere Heroku CLI fra Heroku-webstedet. Heroku CLI giver dig mulighed for at kommunikere med dit lager, hver gang du har brug for at foretage ændringer i din app.

Hvis du ikke allerede er bekendt med Git-kommandoer, skal du kigge på vores introduktion til versionskontrol med Git.

Opret et Django-projekt

Hvis du ikke har oprettet et Django-projekt og vil prøve det med denne vejledning, skal du åbne kommandolinjen og skabe et virtuelt miljø hvis du ikke har en endnu. Når det virtuelle miljø er klar, skal du bruge denne kommando til at installere Django-rammen:

Sådan oprettes og administreres dine virtuelle Python-miljøer effektivt

Vi undersøger de bedste måder at oprette og administrere dine virtuelle Python-miljøer på.

pip installere django == 2.1.7

Når Django er installeret i det virtuelle miljø, skal du køre følgende kommando for at starte et nyt Django-projekt:

django-admin.py startprojekt projektnavn

Opret derefter en ny Python-app. For at gøre det skal du migrere til dit projekts rodmappe på CMD og køre:

python manage.py startapp app_name

Husk at udskifte Projekt navn og app_name med dine foretrukne navne.

Du har brug for gunicorn modul til dette, så du skal også køre pip installere gunicorn. Tilføj derefter gunicorn til listen over installerede apps i settings.pysom vist nedenfor:

Dette er kun en overfladeteknik til opbygning af en Django-app. Uanset om din app er klar, eller du bare bygger en, skal du sørge for, at du kører python manage.py migrere for at oprette din database.

Du skal nu have en Python-app, der kører inden for din Django-ramme. Nu dykker vi ned i vores hovedmål.

Implementering af din app til Heroku

For at få en vellykket implementering af din app til Heroku skal du oprette en krav.txt fil. For at konfigurere det skal du køre følgende på din CMD:

pip fryse> krav.txt

Denne linje skaber en .txt fil, der indeholder alle de pakker, der bruges til at betjene dit projekt. Heroku ser på den fil under implementeringen og installerer disse pakker automatisk.

En anden vigtig fil, du skal angive, er Profilfil. Dette fortæller Heroku kommandoerne til at køre ved initialisering af appen. Du skal dog oprette denne fil ved eksplicit at oprette en ny tekstfil med navnet Profilfil i dit projekt rod. Sørg for, at denne fil ikke har filtypenavn. ellers fungerer det ikke.

For at fjerne filtypen fra Procfile i Windows skal du åbne mappen i File Explorer og klikke på Udsigt på øverste værktøjslinje, og kontroller Filnavneudvidelser boks. Derefter ser du udvidelserne for alle filer, inklusive .txt udvidelse til Profilfil. Højreklik på Profilfil og vælg Omdøb, fjern derefter blot .txt udvidelse og hit Gå ind.

Åbn derefter Procfile og tilføj følgende linje, der erstatter Projekt navn med det navn, der gælder for dit projekt:

web: gunicorn project_name.wsgi

Eventuelt kan du også oprette en runtime.txt fil. Åbn filen, og angiv Python-versionen som følger:

python-3.7.6

Sådan fortæller du Heroku den Python-version, som din app kører på. Hvis du ikke angiver denne fil, bruger Heroku bare den nyeste version af Python som standard.

Derefter skal du logge ind på din Heroku-konto i kommandoprompten ved at køre denne kommando:

heroku login

Denne kommando åbner din standardbrowser til Heroku-login-siden, hvor du får dine loginoplysninger.

For at oprette en app på Heroku skal du skrive følgende linje:

heroku oprette ademosapp2

Erstatte ademosapp2 med dit foretrukne appnavn. Hvis dit valgte appnavn er i brug, vil du se en meddelelse, der beder dig om at vælge et nyt navn.

På login siden skal du klikke på Heroku logoet for at logge ind på dit Heroku dashboard. Du skal nu se den app, du lige har oprettet.

Åbn derefter din foretrukne teksteditor til dit projekts placering og gå ind i dit projekts settings.py. I settings.py fil, skift Tilladt vært til [*]dette gør din app tilgængelig for enhver global vært.

Gå nu ind i dit Heroku dashboard og klik på den nyoprettede app efterfulgt af indstillinger. I indstillingerne skal du rulle ned og klikke på Tilføj buildpack. Vælg derefter Python som din buildpack, og klik Gem ændringer.

Gå derefter tilbage til din CMD og kør følgende kode for at installere Heroku i dit projekt:

pip installer django-heroku

Tilføj nu den nyinstallerede pakke til krav.txt fil ved at køre:

pip fryse> krav.txt

Åbn derefter dine projekts settings.py fil og type:

importer django_heroku

Også på den sidste linje i settings.py, aktiver django-heroku ved at tilføje:

django_heroku.settings (lokale ()) 
# Sørg for, at du kommenterer denne linje efter implementering

Når det er gjort, skal du starte et eksternt lager ved at skrive følgende i din kommandolinje:

heroku init

Opret derefter et Heroku-app-lager ved at køre:

heroku git: remote -a ademosapp2 #placer ademosapp2 med din apps navn

For at kontrollere de filer, der skal forpligtes, skal du køre:

git-status

Skriv derefter følgende kommando for at tilføje alle ændringer til dit arkiv:

git add - alt

Når ændringerne er tilføjet, begår du dine ændringer til Heroku ved at køre kommandoen:

git commit -m "initial-commit"

Noter det "initial-commit" kan bruge ethvert navn, du kan lide.

Dernæst skal du deaktivere samlestatisk ved hjælp af følgende:

heroku-konfiguration: sæt DISABLE_COLLECTSTATIC = 1

Ellers kan du støde på problemer under implementeringsprocessen.

Hvis du endelig vil skubbe dine filer til dit Heroku-lager, skal du bruge kommandoen:

git skub heroku-mester

Dette skubber alle dine filer til Heroku og gør appen tilgængelig overalt. Gå til for at se din nyinstallerede app https://app_name.herokuapp.com i din browser, erstatter app_name med din apps navn.

Kan Heroku være vært for en app, der ikke kører på Python?

Du kan være vært for en række app-builds på Heroku; de samme Git-processer, som vi dækkede her, fungerer for andre sprog udover Python. Du behøver kun at foretage små ændringer, såsom at nulstille din build-pakke.

Selvom Heroku tilbyder dig gratis hosting, ved vi alle, at gratis indhold har nogle begrænsninger. Men hvis du ikke forventer, at dit websted modtager meget trafik, kan gratis Heroku-hosting være en god mulighed.

E-mail
De 10 bedste nybegynderprojekter til nye programmører

Vil du lære programmering, men ved ikke, hvor du skal starte? Disse begynderprogrammeringsprojekter og tutorials starter dig.

Relaterede emner
  • Programmering
  • Webhosting
  • Programmering
  • Python
Om forfatteren
Idowu Omisola (50 artikler udgivet)

Idowu brænder for alt smart tech og produktivitet. På fritiden leger han med kodning og skifter til skakbrættet, når han keder sig, men han elsker også at bryde væk fra rutinen en gang imellem. Hans lidenskab for at vise folk vejen rundt om moderne teknologi motiverer ham til at skrive mere.

Mere fra Idowu Omisola

Abonner på vores nyhedsbrev

Deltag i vores nyhedsbrev for tekniske tip, anmeldelser, gratis e-bøger og eksklusive tilbud!

Et trin mere !!!

Bekræft venligst din e-mail-adresse i den e-mail, vi lige har sendt dig.

.