Python Sanal Ortam (virtualenv, virtualenvwrapper) Kurulumu/ Kullanımı
Neden Sanal ortam kurmaya ihtiyaç duyduğumuza önceki pip/pip3 nedir ? yazısında değinmiştim. Python programlama dilinde genel olarak Python2 ve Python3 olmak üzere 2 genel versiyon vardır. Bu versiyon farklılıkları aslında gelişmekte olan tüm programlarda, kütüphanelerde mevcuttur. Örneğin bir uygulamanız bir kütüphanenin 1.0 versiyonuna ihtiyaç duyarken başka bir uygulamanız aynı kütüphanenin 2.0 versiyonuna ihtiyaç duymaktadır ve aynı anda aynı kütüphanenin 2 farklı versiyonunu çalıştırmamız mümkün olmadığından sanal ortamlara olan ihtiyaç tam bu noktada ortaya çıkmaktadır. Sanal ortamlar kurarak birbirinden bağımsız aynı kütüphanelerin farklı versiyonlarını kullanmak mümkündür. Sanal ortam kurmak için bir kaç seçenek mevcuttur. Ben burada virtualenv ve bu sanal ortamın kullanımını kolaylaştıran virtualenvwrapper'dan bahsedeceğim.
virtualenv birbirinden bağımsız (yalıtılmış,izole) Python ortamları oluşturmak için bir araçtır. virtualenv diğer sanal ortamlarla kütüphanelerini paylaşmayan kendi kurulum dizinine (klasörüne) sahip sanal ortamlar oluşturur.
virtualenvwrapper virtualenv aracını daha kolay bir şekilde sanal ortam oluşturma, silme, yönetme amacıyla kullanmamızı sağlayan başka bir araçtır.
virtualenv birbirinden bağımsız (yalıtılmış,izole) Python ortamları oluşturmak için bir araçtır. virtualenv diğer sanal ortamlarla kütüphanelerini paylaşmayan kendi kurulum dizinine (klasörüne) sahip sanal ortamlar oluşturur.
virtualenvwrapper virtualenv aracını daha kolay bir şekilde sanal ortam oluşturma, silme, yönetme amacıyla kullanmamızı sağlayan başka bir araçtır.
1. Bilgisayarınıza virtualenv/virtualenvwrapper Kurulu Olup Olmadığının Kontrol Edilmesi
İşletim sisteminize virtualenv ve virtualenvwrapper araçlarının yüklü olup olmadığını aşağıdaki komutları sırasıyla çalıştırarak kontrol edebilirsiniz.
virtualenv --version
virtualenvwrapper --version
virtualenvwrapper --version
2. virtualenv/virtualenvwrapper Kurulumu
Eğer sisteminizde bu araçlar kurulu değilse aşağıdaki komutları çalıştırarak kurulumu gerçekleştirebilirsiniz.
pip install virtualenv
pip install virtualenvwrapper
pip install virtualenvwrapper
virtualenvwrapper Windows kurulumu
pip install virtualenvwrapper-win
Sadece virtualenvwrapper kurulumu yaptığınızda virtualenv kurulumu da otomatik yapılmaktadır. Tekrar versiyon öğrenmek için kullandığımız komutu çalıştırdığımızda muhtemelen aşağıdaki ekran görüntüsüne benzer bir sonuç alacaksınız. Burada 16.0.0 versiyonu kurulmuştur.
virtualenvwrapper
için versiyon kontrolü yapmadan önce yapmamız gereken birkaç işlem mevcuttur. Root klasörü (/) içerisinde
virtualenvwrapper.sh
shell betiğinin (script) nerede olduğuna bakıyoruz ve
/usr/local/bin/
dizininde olduğunu görüyoruz.
virtualenvwrapper
bir takım shell fonksiyonlarından oluşmaktadır ve bu sebeple shell başlangıç dosyasına (startup file) aşağıdaki satırları eklememiz gerekmektedir. Shell başlangıç dosyaları .bashrc veya .profile ismindeki dosyalardır. Bu dosyaların adının önünde nokta (.) bulunduğundan bu dosyalar linux işletim sisteminde gizli dosya olarak algılanmaktadır. Bu tür dosyalar genelde konfigurasyon bilgileri içerdiğinden genelde gösterilmezler. Bu dosyaları görmek için
Home (~)
dizininde
ctrl+H
kısayol tuşlarına basmanız gerekir. Bu kısayol tuşlarına bastığımızda aşağıdaki ekran görüntüsüne benzer bir sonuç elde ederiz ve aradığımız
.bashrc
burada yer almaktadır. .bashrc siz terminali her açtığınızda çalıştırılan shell komut dosyasıdır.
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/my_projects
source /usr/local/bin/virtualenvwrapper.sh
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/my_projects
source /usr/local/bin/virtualenvwrapper.sh
1 2 3 | export WORKON_HOME=$HOME/.virtualenvs export PROJECT_HOME=$HOME/my_projects source /usr/local/bin/virtualenvwrapper.sh |
export
ifadesi ile WORKON_HOME ve PROJECT_HOME değişkenleri tanımlandıkları yerin dışında da kullanılabilir hale geldiler.
source
ifadesi ile shell fonksiyonlarının yer aldığı
virtualenvwrapper.sh
bir kez çalıştırılır. İsterseniz
#
ile bu satırların üzerine unutmamanız için yorum yazabilirsiniz. .bashrc kaydedildikten sonra başka bir değişiklik yapılmadan kapatılır ve aşağıdaki komut ile .bashrc bir kez çalıştırılır.
source ~/.bashrc
yapılan işlemlerden sonra virtualenvwrapper'ın versiyonunu öğrenmemizi sağlayan komut tekrardan çalıştırılır. Eğer virtualenvwrapper hakkında bilgilerin yer aldığı bir sonuç ekranı ile karşılaştıysanız buraya kadar yapılan işlemlerin doğru olduğunu gösterir.
3. Yeni Sanal Ortam Oluşturma :
mkvirtualenv
Yeni sanal ortam oluşturmak için kullanılan mkvirtualenv komutunun kullanımı aşağıdaki gibidir:
mkvirtualenv yeni_sanal_ortam_adi
Yeni sanal ortam oluştururken python 2 ya da python 3 seçimi yapmamız mümkündür. İlgili dökümana buradan ulaşabilirsiniz ya da
virtualenv --help
komutunu çalıştırarak ulaşabilirsiniz.
4. Python versiyonuna Göre Yeni Sanal Ortam Oluşturma
Python2 için yeni sanal ortam oluşturma
mkvirtualenv yeni_sanal_ortam_adi -p python2
Python3 için yeni sanal ortam oluşturma
mkvirtualenv yeni_sanal_ortam_adi -p python3
5. Mevcut Sanal Ortamı Kapatma :
deactivate
mevcut sanal ortam içerisindeyken aşağıdaki komut çalıştırılarak sanal ortamdan çıkış yapılır.
deactivate
6. Mevcut Sanal Ortama Geçiş Yapma :
workon
daha önceden oluşturulmuş sanal ortama geçiş yapmak için aşağıdaki komut çalıştırılır.
workon sanal_ortam_adi
7. Sanal Ortama Kurulan Paketlerin Listelenmesi :
lssitepackages
sanal ortama kurulan paketleri listelemek/görüntülemek için aşağıdaki komut çalıştırılır.
lssitepackages
8. Oluşturulan Sanal Ortamların Listelenmesi :
lsvirtualenv
oluşturmuş olduğunuz tüm sanal ortamları listelemek için aşağıdaki komut çalıştırılır.
lsvirtualenv
9. Mevcut Sanal Ortamın Silinmesi :
rmvirtualenv
oluşturmuş olduğunuz sanal ortamı silmek için aşağıdaki komut çalıştırılır.
rmvirtualenv sanal_ortam_adi