====== Stap 1.c: A3Dbot: Basis app Frame ====== <= [[start|Terug naar start]]\\ <- -- [[projecten|Terug naar A3Dbot Start]]\\ <- -- -- [[a3d_bot_testomgeving|Terug naar testomgeving opzetten start]] ===== Creëer een virtuele omgeving ===== -> [[virtuele_omgeving_voor_python|Virtuele omgeving voor Python]] Python update PIP //(regelmatig uitvoeren)//: python -m pip install -U pip of: python.exe -m pip install --upgrade pip Navigeer eerst naar de map van je project via de terminal of opdrachtprompt. Als je daar eenmaal bent, kun je de volgende commando's gebruiken om een virtuele omgeving te creëren: python -m venv venv Hiermee wordt een nieuwe map genaamd venv in je projectdirectory aangemaakt, waarin de virtuele omgeving wordt opgeslagen. ===== Activeer de virtuele omgeving ===== Nu moet je de virtuele omgeving activeren: .\venv\Scripts\Activate Zodra de virtuele omgeving actief is, moet je voor de naam van je terminal of opdrachtprompt de naam van je virtuele omgeving (venv in dit geval) zien staan. Dit geeft aan dat de omgeving actief is. ===== Bestanden in project map ===== * app.py * view.py * controler.py * api.pi * dmodel.py ===== Instaleer OpenAI ===== -> [[ai-ki#openai_api|OpenAI]] pip install openai ===== update requirements.txt ===== -> [[virtuele_omgeving_voor_python#requirementstxt|Meer requirements.txt]] :!: **Tip**: Het is een goed idee om een **requirements.txt** bestand in je project te hebben. Hierin kun je alle pakketten en hun versies noteren die voor je project nodig zijn. Dit maakt het gemakkelijker voor anderen (of voor jezelf in de toekomst) om de exacte omgeving te reproduceren. Je kunt een requirements.txt bestand maken met het volgende commando: pip freeze > requirements.txt ===== Dockerfile ===== -> [[stap_1_b|Docker]] # Gebruik de officiële Python-image als basisimage FROM python:3.11.2 # Stel de werkmap in de container in op /app WORKDIR /app # Kopieer de huidige directory-inhoud naar de werkmap in de container COPY . /app # Installeer de benodigde pakketten met pip RUN pip install --no-cache-dir -r requirements.txt # Maak poort 80 beschikbaar voor de wereld buiten deze container EXPOSE 80 # Definieer een omgevingsvariabele (Voorbeeld) ENV NAME World # Voer app.py uit wanneer de container wordt gestart CMD ["python", "app.py"] We beginnen met een basisimage van Python 3.11.2\\ We stellen /app in als de werkdirectory in de container.\\ We kopiëren de inhoud van de huidige directory naar de werkmap in de container.\\ We installeren de dependencies die zijn opgegeven in requirements.txt.\\ We stellen poort 80 open voor communicatie met de buitenwereld.\\ We definiëren een omgevingsvariabele genaamd NAME met de waarde World.\\ Ten slotte, wanneer de container wordt gestart, wordt app.py uitgevoerd.\\ :!: Zorg ervoor dat u de EXPOSE en CMD instructies aanpast aan de behoeften van uw project, inclusief het specificeren van andere poorten en/of opstartbestanden indien nodig. ----