Jei su „Django“ sukūrėte portfelį arba programos prototipą, jį nemokamai priglobti „Vercel“ tereikia vos keliais paspaudimais ir nedidelę kodo dalį. Anksčiau „Heroku“ buvo gelbėtojas, tačiau 2022 m. nustojo siūlyti nemokamą prieglobą.
Naudodami „Vercel“ galite nemokamai įdiegti programą tiesiai iš „GitHub“ ir bet kas gali ją pasiekti iš bet kurios vietos. Štai kaip tai padaryti.
Sukonfigūruokite „Django“ programą, skirtą „Vercel“.
Turėsite sukonfigūruoti keletą „Django“ projekto aspektų, kad galėtumėte jį įdiegti „Vercel“.
Sukonfigūruokite failą vercel.json
Pirmiausia projekto šakniniame aplanke turite sukurti failą vercel.json, kad „Vercel“ būtų nukreipta į programos žiniatinklio serverio šliuzo sąsają (WSGI):
{
"stato": [
{
"src": "django_app_name/wsgi.py",
"naudoti": "@vercel/python"
}
],
"maršrutai": [
{
"src": "/(.*)",
"dest": "django_app_name/wsgi.py"
}
]
}
Pakeiskite django_app_name su jūsų „Django“ programos pavadinimu (tokiu pat kaip aplanko, kuriame yra settings.py failas).
Pertvarkykite failą wsgi.py
Vercel neatpažįsta taikymas kintamasis faile wsgi.py. Laimei, vienintelis pakeitimas, kurį atliksite norėdami išspręsti šią problemą, yra išlaikyti taikymas kintamasis į Vercel as programėlė.
Taigi pakeiskite savo programą wsgi.py failas, kaip parodyta:
importuoti os
iš django.core.wsgi importuoti get_wsgi_application
os.environ.setdefault(„DJANGO_SETTINGS_MODULE“, "django_blog.settings")
programa = get_wsgi_application()
programa = programa
Prisijunkite prie nuotolinės duomenų bazės
Jei jūsų programai reikia duomenų bazės palaikymo, naudokite „Vercel“ nuostatą arba kurkite išorinę duomenų bazės egzempliorių. Laimei, yra daug nemokama PostgreSQL duomenų bazė parinktys internete. Tu taip pat gali prisijungti prie MongoDB klasterio jei jums labiau patinka NoSQL duomenų bazė.
Tačiau čia pasiliksime prie Geležinkelio PostgreSQL duomenų bazės klasterio, nes jis siūlo pradinį kreditą ir jį lengva nustatyti.
Norėdami nustatyti „PostgreSQL“ egzempliorių geležinkelyje:
- Aplankykite Geležinkelis svetainę, kad sukurtumėte paskyrą.
- Spustelėkite Pradėkite naują projektą.
- Pasirinkite Pateikite PostgreSQL.
- Spustelėkite Postgres reklamjuostę, kad pamatytumėte savo duomenų bazės kintamuosius ir ryšio eilutes.
- Eikite į Kintamieji skirtuką. Tada nukopijuokite ir įklijuokite DATABASE_URL eilutę į teksto rengyklę, kad ją formatuotumėte. Įsitikinkite, kad pakeisite vietos rezervavimo ženklus DATABASE_URL eilutę su atitinkamomis kintamųjų reikšmėmis.
- Nukopijuokite likusius kintamuosius ir nustatykite duomenų bazę „Django“. settings.py failą, kaip parodyta žemiau. Nepamirškite pakeisti kintamųjų pavadinimų atitinkamomis reikšmėmis, kurias pateikia Geležinkelis.
DUOMENŲ BAZĖS = {
'numatytas': {
'VARIKLIS': „django.db.backends.postgresql“,
'URL': „DATABASE_URL“,
'VARDAS': 'PGDATABASE',
'VARTOTOJAS': „PGUSER“,
'SLAPTAŽODIS': PGPASSWORD,
'HOST': 'PGHOST',
"PORT": PGPORT,
}
}
Apsvarstykite maskuojant šiuos slaptus kintamuosius naudojant a .env failą, kad padidintumėte „Django“ programos saugumą. Be to, „Vercel“ leidžia diegiant įtraukti aplinkos kintamuosius.
Taigi, kai tik pasinaudosite os.getenv metodas, Python paima nurodytą kintamąjį iš Vercel prieglobos aplinkos. Taigi jūsų duomenų bazės sąranka tampa:
DUOMENŲ BAZĖS = {
'numatytas': {
'VARIKLIS': „django.db.backends.postgresql“,
'URL': os.getenv(„POSTGRES_URL“),
'VARDAS': os.getenv(„PGNAME“),
'VARTOTOJAS': os.getenv(„PGUSER“),
'SLAPTAŽODIS': os.getenv(„POSTGRES_PASSWORD“),
'HOST': os.getenv('PGHOST'),
"PORT": os.getenv('PGPORT),
}
}
Įdiekite „GitHub“ saugyklą „Vercel“.
Antroji šio proceso dalis apima „Vercel“ nukreipimą į „GitHub“ saugyklą. Kai tai padarysite, jūsų programa bus aktyvi ir bet kas galės pasiekti jūsų svetainę naudodami „Vercel“ sugeneruotą URL.
Sukurkite reikalavimų failą
Vercel bando rasti ir įdiegti jūsų projekto priklausomybes viduje reikalavimai.txt failą diegimo metu. Tačiau atminkite, kad rašymo priklausomybės iš a virtualioje aplinkoje į reikalavimai.txt visada lengviau nei iš pasaulinės erdvės.
Sukurkite failą prasības.txt projekto šakniniame aplanke naudodami šią komandą per terminalą:
pip freeze > reikalavimai.txt
Prijunkite savo saugyklą prie „Vercel“.
„Vercel“ veikia stebėdama pakeitimus saugykloje. Taigi pirmasis diegimo žingsnis yra nusiųskite savo kodą į „GitHub“. arba bet kuri kita versijų valdymo sistema, kuri jums labiausiai tinka. Nepaisykite šio veiksmo, jei jūsų kodas jau yra „GitHub“.
Norėdami pradėti naudotis Vercel:
- Užsiregistruokite Vercel svetainė naudodami savo GitHub paskyrą. Vykdykite ekrane pateikiamus nurodymus, kad užbaigtumėte paskyros registraciją ir pradėtumėte.
- Tada pasirinkite „Hobby“ paskyros parinktį, kad galėtumėte nemokamai naudotis „Vercel“.
- Prisijungę spustelėkite Pridėti naują. Tada spustelėkite Projektas.
- Toliau spustelėkite Pridėkite „GitHub“ paskyrą nuo Importuokite „Git“ saugyklą skyrius. Arba galite spustelėti Perjungti Git teikėją jei naudojate kitą versijos valdiklį, išskyrus „GitHub“.
- Spustelėkite Visos saugyklos. Tada spustelėkite Diegti.
- Sąraše pasirinkite savo „GitHub“ paskyrą.
- „Vercel“ automatiškai aptiks jūsų saugyklas. Spustelėkite Importuoti dešinėje nuo to, kuris turi jūsų Django projektą.
- Spustelėkite aplinkos įvairovė išskleidžiamajame meniu, kad pateiktumėte „Vercel“ aplinkos kintamuosius. Tai gali būti jūsų programos slaptasis raktas ir duomenų bazės ryšio eilutės. Užpildykite vardas lauką su kintamojo pavadinimu. Tada įveskite jo vertę į Vertė lauke.
- Spustelėkite Papildyti sukurti naują lauką ir įtraukti kitus aplinkos kintamuosius.
- Galiausiai spustelėkite Dislokuoti. Jūsų programa po kelių akimirkų turėtų pradėti veikti. Norėdami apsilankyti naujoje svetainėje, spustelėkite žiniatinklio piktogramos dešinėje esantį URL.
Įdiegta „Vercel“ seka tolesnius pakeitimus, perkeltus į pagrindinę šaką, kad atspindėtų juos tiesioginėje versijoje. Taigi, norėdami atnaujinti programą realiuoju laiku, turite tik įdiegti pakeitimus „GitHub“.
Nors „Vercel“ automatiškai generuoja URL jūsų „Django“ svetainei, taip pat galite įdiegti naudodami tinkintą domeno pavadinimą. Taigi apsvarstykite domeno vardo pirkimas iš registratoriaus jei tau reikia.
Priglobkite savo „Django“ svetainę nemokamai
Kartais prireikia daugiau nei „GitHub“ saugyklos, kad padarytumėte įspūdį potencialiems darbdaviams ir klientams. Tvirta ir nuosekli saugykla parodo jūsų kompetenciją, o tiesioginės portfelio ar projekto prototipo versijos rodymas pristato jus kaip sėkmingą asmenį.
Rengti projektą, kuris negeneruoja pajamų, dažnai atgraso. Tačiau, laimei, „Vercel“ yra viena iš nedaugelio nemokamų žiniatinklio prieglobos paslaugų. Ir jūs matėte, kaip platformoje nemokamai įdiegti „Django“ projektą. Nors sugeneruotas URL atrodo netvarkingai, galite jį įklijuoti į projekto ReadMe „GitHub“, kad parodytumėte žmonėms, kaip veikia jūsų kūrinys.