We spreken hier natuurlijk niet over het reptiel, maar wel over een van de meest populaire programmeertalen.
Pyenv
Wij maken gebruik van pyenv. Dit is een virtuele Python omgeving met telkens zijn eigen Python packages. Hierdoor is het mogelijk om elke Python versie te gebruiken die beschikbaar is.
Pyenv geeft ook de mogelijkheid om per gebruiker een andere versie van Python te gebruiken. Als je van gebruiker wil veranderen ga je wel eerst naar zijn home map moeten gaan om het pyenv commando te gebruiken.
Verschillende technologieën
In de virtuele Python omgeving gaan we een webserver pakket installeren om de default placeholder te kunnen serveren. Het zijn allemaal ASGI servers. ASGI staat voor Asynchronous Server Gateway Interface. Dit biedt de mogelijkheid om zowel synchroon als asynchroon te werken.
Je kan hier kiezen uit drie technologieën, dit doe je bij het aanmaken van het Python component:
- Uvicorn
- Daphne
Uvicorn ondersteund HTTP/1.1 en WebSockets. Het maakt gebruik van uvloop.
Daphne ondersteund HTTP/2.
De gekozen webserver zal gestart worden via een systemd service en zal altijd binden op een Linux socket.
Logging
De logs zijn beschikbaar voor de gebruiker via journalctl.
journalctl -u pyxxxxx.service -r
Credentials
De gegevens die je nodig hebt om aan te melden met het Python component kan je terug vinden in het controlepaneel. Ga naar het project en open het Python component, scroll naar credentials om de juiste gegevens terug te vinden.

Advanced config
De advanced config die je terug kan vinden in het Python component bevat eigenlijk alle configuratie voor het component die je zou kunnen aanpassen.

- Het Python start commando is het commando dat je nodig hebt om de Python applicatie te starten.
- De Python ASGI Server is de webserver die je gaat gebruiken voor je Python applicatie.
- Python version is de versie.
- Relative path is het path waar je applicatie geplaatst moet worden.