Virtualenv med Python2.7 på FS-Data

(This blogpost is just available in swedish, since it involves a swedish webhost)

Jag har tidigare skrivit hur man får igång Django på FS-Data. För ett par månader sen så uppdaterade de sin Pythontolk till 2.7, vilket gjorde livet bra mycket roligare. Något som gör livet än mer roligare är virtualenv. Virtualenv är en virtuell miljö som du installerar dina pythonpaket i så slipper du paket som kolliderar eller, vara beroende av att paket installeras system wide. Portabiliteten blir superb genom att man bara specar ens pythonpaket i en fil (requirements.txt) som man sedan använder när man deployar ut sin kod. Virtualenv är de facto-standard i Pythonvärlden och något varje Pythonutvecklare borde lära sig.

Här följer en kort guide för hur du får igång virtualenv på FS-Data.

  • SSH:a in på ditt FS-Datakonto, du kan göra livet lättare genom att logga in utan lösenord, vilket gör automatiska deployments bra mycket smidigare.

    ssh konto@konto.fsdata.se
    
  • Skapa en mapp där de pythonpaket du behöver installera på ditt konto ska bo.

    mkdir site-packages
    
  • Börja med att skapa .bash_profile och ändra i lite sökvägar:

    echo 'export PYTHONPATH=“$HOME/site-packages/"
    export PATH="$PATH:$HOME/site-packages/"' > .bash_profile
    
  • Installera pip och virtualenv genom easy_install

    easy_install --install-dir=$HOME/site-packages pip;
    easy_install --install-dir=$HOME/site-packages virtualenv
    
  • Nu har du allt som behövs för att skapa en virtualenv, hur du väljer att organisera dina virtualenv:er är upp till dig, men ett smidigt sätt är att använda virtualenvwrapper, men det är ett ämne för en kommande blogpost. Så, jag tar och hoppar in i www och skapar en mapp där.

    cd www;
    mkdir mappnamn;
    cd mappnamn
    
  • Nu är det bara att skapa din virtualenv, detta kommando skapar en virtualenv i mappen “env”

    virtualenv --no-site-packages --distribute env
    
  • Då var det bara att aktivera virtualenv:en

    source env/bin/activate
    

    Nu ska du se att din kommandorad har bytt stil och börja med “(env)”, detta är för att namnet på din virtualenv är just “env”, hade du i det föregående steget döpt den till “minwebshop” hade det stått just det.

  • Nu är det bara att installera paket i din virtualenv!

    pip install django;
    pip freeze
    

Så, det var en liten snabbguide för hur man få igång virtualenv på FS-Datas delade miljö. Hittar du något fel så skriv gärna en kommentar nedan, fler guider i stil med denna kommer framöver.

comments powered by Disqus