İşletim sistemi üzerinde herhangi bir değişiklik yapmadan, yalıtılmış python ortamları oluşturmayı sağlayan bir araçtır. İlgili ortam aktif olduğu müddetçe yaptığınız kurulumlar o sanal ortam için geçerlidir. Mesela şöyle düşünün; Elinizdeki bekir uygulaması python3 ve ve django 2.x kullanıyor. Elinizdeki ali uygulaması ise python2 ve ve django 1.x kullanıyor. Sistemi sehven django 2.x'e güncellemeniz durumunda ali uygulaması çalışmayacaktır. Bu durumda VirtualEnv imdadımıza yetişir. İki adet sanal ortam kurup, birisine django 1.x'i diğerine django 2.x'i kurmak suretiyle birbirinden izole etmiş oluruz.
$ sudo apt-get install python3-pip $ sudo pip3 install virtualenv virtualenvwrapper
Eğer pip3 ile kurulumda sertifika hatası alırsanız:
(Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:720)'),)': /simple/django/)
Aşağıdaki komutlarla ilgili dizini oluşturun. Dosyayı editörle açın.
$ mkdir ~/.pip
$ nano ~/.pip/pip.conf
Ve aşağıdaki ayarları dosyaya ekleyip, kaydedin.
[global]
trusted-host = pypi.python.org
extra-index-url = https://pypi.python.org/simple
echo "export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3" >> ~/.bashrc
echo "export WORKON_HOME=~/Env" >> ~/.bashrc
echo "source /usr/local/bin/virtualenvwrapper.sh" >> ~/.bashrc
source ~/.bashrc
Artık sanal bir ortam oluşturabiliriz:
$ mkvirtualenv python3_django2
Yukarıdaki şekilde sanal bir ortam oluşturduğumuzda promt da değişir. Cursor'un en başına "(python3_django2)" ibaresinin geldiğini göreceksiniz. Artık bu ortama istediğimiz yazılımı kurabiliriz. Mesala: django 2.0.2'yi kuralım.
(python3_django2) ali@pardus:~/Env$ pip3 install django==2.0.2
Yukarıdaki şekilde sanal bir ortam oluşturduğumuzda promt da değişir. Cursor'un en başına "(python3_django2)" ibaresinin geldiğini göreceksiniz. Artık bu ortama istediğimiz yazılımı kurabiliriz. Mesala: django 2.0.2'yi kuralım.
(python3_django2) ali@pardus:~/Env$ deactivate
"deactivate" komutundan sonra cursor'un hemen önündeki aktif sanal ortamı gösteren ibarenin de artık kalktığını görürüz.
Yukarıdaki şekilde sanal bir ortam oluşturduğumuzda promt da değişir. Cursor'un en başına "(python3_django2)" ibaresinin geldiğini göreceksiniz. Artık bu ortama istediğimiz yazılımı kurabiliriz. Mesala: django 2.0.2'yi kuralım.
$ source ~/Env/python3_django2/bin/activate
"source" komutundan sonra cursor'un hemen önüne aktif sanal ortamı gösteren ibarenin geldiğini görürüz.