Ga naar hoofdinhoud

Online zetten: je project in een verse map

Hier bouw je op verder: Een project klonen en Een virtual environment maken

Weet je dit niet meer zeker? Lees het terug voordat je verdergaat.

Een server krijgt alleen wat in je repository staat. Doe daarom eerst zelf wat hij straks doet: haal je project op in een lege map, en kijk of het start. Dat doe je nog op Windows, waar je alles kent.

Klonen​

Kloon je repository in VS Code met Git: Clone, in een andere map dan die van je project, bijvoorbeeld Documenten\proef. Open de gekloonde map.

Installeren vanaf de lijst​

Maak in die map een nieuwe virtual environment, zoals je dat bij elk project doet. Open daarna de terminal van VS Code: de Python-extensie zet hem daar aan, en je ziet (.venv) voor de prompt. Installeer alles uit je lijst in één keer:

python -m pip install -r requirements.txt

De -r betekent: lees de namen uit dit bestand. Straks doet de server precies dit.

Starten​

Stop eerst de server in je eigen projectmap, als die nog draait. Start dan de kopie:

fastapi run main.py --host 127.0.0.1

Open http://127.0.0.1:8000 in je browser.

Stop daarna deze server met Ctrl+C. In les 11 start je je site in Ubuntu, op dezelfde poort.

Controlevraag
In je eigen projectmap installeerde je ooit slowapi, maar je maakte requirements.txt daarvoor en niet daarna. Wat gebeurt er als je de kopie in de verse map start?
Kies wat jij denkt. Bij het goede antwoord zie je de uitleg.

Er gaat iets mis​

ModuleNotFoundError​

ModuleNotFoundError: No module named 'slowapi'

Oorzaak: je site gebruikt een package dat niet in requirements.txt staat.

Oplossing: maak de lijst opnieuw in je eigen projectmap (les 4), commit en push. Haal hem in de verse map op met Git: Pull en installeer opnieuw.

TemplateNotFound​

jinja2.exceptions.TemplateNotFound: 'gastenboek.html' not found in search path: 'templates'

Oorzaak: een bestand of map staat wel op je laptop, maar niet in git.

Oplossing: zet het bestand in git in je eigen projectmap, commit en push, en haal het op in de verse map.

Errno 10048​

De kopie start niet, met dezelfde melding [Errno 10048] als in les 1.

Oorzaak: je eigen project draait nog op poort 8000.

Oplossing: stop die server met Ctrl+C, of start de kopie met --port 8001.

Opdrachten​

Opdracht 1: Run - Volg je eigen README​

Doe het nog een keer, maar nu met alleen je README als handleiding. Beter nog: laat een klasgenoot het doen, zonder dat je helpt.

Antwoord

Werkt het, dan klopt je README. Loopt iemand vast, dan ontbreekt er een stap. Zet hem erbij, commit, en probeer het opnieuw in een verse map.

Door naar les 7: git in Ubuntu.