Čitatelji poput vas podržavaju MUO. Kada kupite putem poveznica na našoj stranici, možemo zaraditi partnersku proviziju. Čitaj više.

Ako ste izradili portfelj ili prototip aplikacije s Djangom, besplatno hosting na Vercelu udaljen je samo nekoliko klikova i mali dio koda. Heroku je nekada bio spas, ali je prestao nuditi besplatan hosting 2022.

Koristeći Vercel, možete besplatno implementirati svoju aplikaciju izravno s GitHuba i svatko joj može pristupiti s bilo kojeg mjesta. Evo kako to učiniti.

Konfigurirajte svoju Django aplikaciju za Vercel

Morat ćete konfigurirati nekoliko aspekata svog Django projekta prije nego što ga možete implementirati na Vercel.

Konfigurirajte datoteku vercel.json

Prvo morate izraditi datoteku vercel.json u korijenskoj mapi vašeg projekta kako biste usmjerili Vercel na sučelje pristupnika web poslužitelja (WSGI):

{
"gradi": [
{
"src": "django_app_name/wsgi.py",
"koristi": "@vercel/python"
}
],
"rute": [
{
"src": "/(.*)",
"dest": "django_app_name/wsgi.py"
}
]
}

Zamijeniti

instagram viewer
ime_django_aplikacije s nazivom vaše Django aplikacije (isti kao mapa koja sadrži postavke.py datoteka).

Refaktorirajte datoteku wsgi.py

Vercel ne prepoznaje primjena varijablu u datoteci wsgi.py. Srećom, jedina promjena koju ćete učiniti kako biste riješili ovaj problem jest proći primjena varijabla u Vercel kao aplikacija.

Stoga refaktorirajte svoju aplikaciju wsgi.py datoteka kao što je prikazano:

uvoz os
iz django.core.wsgi uvoz get_wsgi_aplikacija
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "django_blog.postavke")
aplikacija = get_wsgi_application()
app = aplikacija

Povežite se s udaljenom bazom podataka

Ako vaša aplikacija treba podršku za bazu podataka, upotrijebite Vercelovu odredbu ili negdje zavrtite vanjsku instancu baze podataka. Srećom, ima ih mnogo besplatna baza podataka PostgreSQL opcije online. Također možete spojiti na MongoDB klaster ako više volite NoSQL bazu podataka.

Međutim, ovdje ćemo se držati klastera baze podataka PostgreSQL tvrtke Railway budući da nudi početni kredit i lako ga je postaviti.

Za postavljanje PostgreSQL instance na Railway:

  1. Posjetiti Željeznička pruga web mjesto za kreiranje računa.
  2. Klik Započnite novi projekt.
  3. Izaberi Odredba PostgreSQL.
  4. Kliknite na Postgres banner za prikaz varijabli baze podataka i nizova veze.
  5. Idi na Varijable tab. Zatim kopirajte i zalijepite DATABASE_URL niz u uređivač teksta da biste ga formatirali. Obavezno zamijenite rezervirana mjesta u DATABASE_URL niz s odgovarajućim vrijednostima varijable.
  6. Kopirajte preostale varijable i postavite svoju bazu podataka u svoj Django postavke.py datoteku, kao što je prikazano u nastavku. Ne zaboravite zamijeniti nazive varijabli s odgovarajućim vrijednostima koje pruža Railway.
    BAZE PODATAKA = {
    'zadano': {
    'MOTOR': 'django.db.backends.postgresql',
    'URL': 'DATABASE_URL',
    'IME': 'PGDATABASE',
    'KORISNIK': 'PGUSER',
    'LOZINKA': 'PGPASSWORD',
    'DOMAĆIN': 'PGHOST',
    'LUKA': PGPORT,
    }
    }

Smatrati maskiranje ovih tajnih varijabli pomoću a .env da biste poboljšali sigurnost vaše Django aplikacije. Osim toga, Vercel vam omogućuje ispisivanje varijabli vaše okoline tijekom implementacije.

Dakle, kada jednom upotrijebite os.getenv metoda, Python dohvaća navedenu varijablu iz okruženja hostinga Vercel. Dakle, vaša baza podataka postaje:

BAZE PODATAKA = {
'zadano': {
'MOTOR': 'django.db.backends.postgresql',
'URL': os.getenv('POSTGRES_URL'),
'IME': os.getenv('PGNAME'),
'KORISNIK': os.getenv('PGUSER'),
'LOZINKA': os.getenv('POSTGRES_PASSWORD'),
'DOMAĆIN': os.getenv('PGHOST'),
'LUKA': os.getenv('PGPORT),
}
}

Postavite svoje GitHub spremište na Vercel

Drugi dio ovog procesa uključuje usmjeravanje Vercela na vaše spremište na GitHubu. Nakon što to učinite, vaša će aplikacija biti aktivna i svatko može pristupiti vašoj web stranici na URL-u koji generira Vercel.

Stvorite datoteku zahtjeva

Vercel pokušava pronaći i instalirati ovisnosti vašeg projekta unutar zahtjevi.txt datoteku tijekom postavljanja. Međutim, zapamtite da pisanje ovisnosti iz a virtualno okruženje u zahtjevi.txt uvijek je lakše nego iz globalnog prostora.

Stvorite datoteku requirements.txt u korijenskoj mapi vašeg projekta pomoću sljedeće naredbe putem terminala:

pip zamrzavanje > zahtjevi.txt

Povežite svoje spremište s Vercelom

Vercel radi tako da prati promjene u repozitoriju. Dakle, prvi korak implementacije je proslijedite svoj kod na GitHub ili bilo koji drugi sustav kontrole verzija koji vam najbolje odgovara. Zanemarite ovaj korak ako je vaš kod već na GitHubu.

Za početak rada na Vercelu:

  1. Prijavite se na Web stranica Vercel koristeći svoj GitHub račun. Slijedite upute na zaslonu da biste dovršili registraciju računa i započeli.
  2. Zatim odaberite opciju Hobby account da biste besplatno koristili Vercel.
  3. Nakon što ste prijavljeni, kliknite Dodaj novi. Zatim kliknite Projekt.
  4. Zatim kliknite Dodaj GitHub račun od Uvoz Git repozitorija odjeljak. Ili možete kliknuti Promijeni Git Providera ako koristite drugu kontrolu verzije osim GitHuba.
  5. Klik Sva spremišta. Zatim kliknite Instalirati.
  6. Odaberite svoj GitHub račun s popisa.
  7. Vercel će automatski otkriti vaša spremišta. Klik Uvoz desno od one koja nosi vaš Django projekt.
  8. Kliknite na Varijable okoline padajući izbornik za popis varijabli okoline na Vercelu. Oni mogu uključivati ​​tajni ključ vaše aplikacije i nizove veze s bazom podataka. Ispunite Ime polje s nazivom varijable. Zatim unesite njegovu vrijednost u Vrijednost polje.
  9. Klik Dodati za stvaranje novog polja i dodavanje drugih varijabli okruženja.
  10. Na kraju kliknite Rasporedi. Vaša bi aplikacija trebala postati aktivna za nekoliko trenutaka. Kliknite URL s desne strane web ikone da biste posjetili svoju novu web stranicu.

Jednom implementiran, Vercel prati naknadne promjene gurnute u glavnu granu kako bi ih odrazio u verziji uživo. Stoga trebate samo implementirati svoje promjene na GitHub da biste ažurirali svoju aplikaciju u stvarnom vremenu.

Iako Vercel automatski generira URL za vaše Django web mjesto, možete ga implementirati i pomoću prilagođenog naziva domene. Pa razmislite kupnja imena domene od registrara ako vam treba.

Udomite svoju Django web stranicu bez ikakvih troškova

Ponekad je potrebno više od GitHub repozitorija da bi se impresionirali potencijalni poslodavci i klijenti. Dok snažan i koherentan repozitorij pokazuje vašu kompetenciju, prikazivanje žive verzije vašeg portfelja ili prototipa projekta predstavlja vas kao uspješnog.

Hosting projekta koji ne donosi prihod često je obeshrabrujući. No, srećom, Vercel je jedna od rijetkih besplatnih usluga web hostinga. I vidjeli ste kako besplatno postaviti svoj Django projekt na platformu. Iako generirani URL izgleda neuredno, možete ga zalijepiti u ReadMe svog projekta na GitHubu da pokažete ljudima kako vaša kreacija funkcionira.