Skip to content

Oppsett av miljø

Python med uv

Vi oppfordrer brukere av Knast maskiner å bruke uv for oppsett av virtuelle python miljøer og installasjon av pakker. Under følger en oppskrift for å sette opp et slikt virtuelt miljø for å kunne kjøre python kode i en isolert kontekst. For mer informasjon om uv, se deres dokumentasjon.

Opprettelse et nytt virtuelt miljø med spesifisert python versjon

Merk for å installere en annen python versjon kan det være at du må tillate utgående trafikk for å hente ressursene du trenger. Denne allowlistingen gjør du selv for Knast maskinen din i datamarkedsplassen under Åpninger mot internett fanen. Hvis det ikke kommer tydelig frem av feilmeldingen hvilke hoster du ikke når vil du i denne fanen også kunne se alle blokkerte nettverkskall gjort fra maskinen din mot internett.

# Setter opp et nytt venv og installerer python 3.11
uv venv --python 3.11 myvenv

# Aktiverer det virtuelle miljøet i gjeldende shell
source myvenv/bin/activate

Låsing og installasjon av avhengigheter i virtuelt miljø

Tar her utgangspunkt i at bruker har en requirements fil som heter requirements.in som inneholder en liste over avhengighetene det er behov for.

# Låser avhengigheter og lagrer i requirements.txt
uv pip compile requirements.in -o requirements.txt

# Installerer avhengigheter fra requirements.txt
uv pip sync requirements.txt

Bruke det virtuelle miljøet i en notebook-kontekst

For å bruke det virtuelle miljøet for notebooken konteksten din velger du Select another kernel -> Python environments -> myvenv.

Hvis ikke det virtuelle miljøet dukker opp i listen over kan du legge til det manuelt ved å kjøre følgende kommando:

ipython kernel install --name myvenv --user

Vedlikehold av Python-pakker og versjoner

Man bør regelmessig kjøre uv pip list --outdated for å se hva slags pakker man trenger å oppgradere. Enda bedre er å ha en requirements.txt (eller tilsvarende for Poetry eller lignende verktøy) sjekket inn i Github, og la Dependabot gjøre jobben. Husk også å følge med på nye Python-versjoner! Det finnes en god oversikt hos Python developers guide. Per dags dato bør ingen være på noe lavere enn 3.9, og man bør jobbe med å komme seg vekk fra 3.9 da den har EOL (end of life) oktober 2025.

Autentisering mot GitHub

Vi anbefaler å bruke gh cli for å autentisere seg mot GitHub. Dette kommandolinjeverktøyet kommer preinstallert i Knast-miljøet ditt. For å autentisere deg mot GitHub kjører du gh auth login fra en terminal på Knast-maskinen din og følger instruksjonene som kommer opp.