Ubuntu'da sanal bir python ortamı nasıl kurulur ve kullanılır?

66

Python sanal ortamları, bağımlılık ve sürüm çakışmaları önlemek için yalıtılmış python ortamları oluşturmak için kullanılır ve ayrıca dolaylı olarak izin sorunlarıyla ilgilenir. Fakat onu kurmanın ve kullanmanın en kolay yolu Ubuntu'da?

    
sordu Gerhard Burger 18.01.2013 15:23

4 cevap

93

virtualenvwrapper ile (% co_de işlevinin işlevselliği için kullanıcı dostu sarmalayıcılar)

virtualenv'yi yükle

virtualenv değerini

ile yükle
sudo apt-get install virtualenv

(Ubuntu 14.04 için (güvenilir) virtualenv yükleyin)

virtualenvwrapper'ı yükle

virtualenvwrapper 'ı da yüklememizin nedeni, sanal ortamlarınızı yönetmek için güzel ve basit komutlar sunmasıdır. % Co_de% dosyasını yüklemenin iki yolu vardır:

Ubuntu paketi olarak (Ubuntu 16.04'ten)

Çalıştır

sudo apt install virtualenvwrapper

sonra çalıştırın

echo "source /usr/share/virtualenvwrapper/virtualenvwrapper.sh" >> ~/.bashrc

Pipeti kullanma

  1. Tak ve yükle / / güncelle

    Python 2 için pip yükleyin

    sudo apt-get install python-pip
    

    veya Python 3 için

    sudo apt-get install python3-pip
    

    (Python 3'ü kullanırsanız, bu kılavuzun geri kalanında python-virtualenv yerine virtualenvwrapper kullanmanız gerekebilir).

    İsteğe bağlı (ancak önerilen): Pip için bash otomatik tamamlamayı açma

    Çalıştır

    pip completion --bash >> ~/.bashrc
    

    ve etkinleştirmek için pip3 komutunu çalıştırın.

  2. virtualenvwrapper'ı yükle

    pip 'den kaçınmak istediğimizden source ~/.bashrc ' yi yerel olarak (varsayılan olarak sudo pip 'nin altında) :

    pip install --user virtualenvwrapper
    

    ve

    echo "export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3" >> ~/.bashrc
    
  3. Kaynak virtualenvwrapper virtualenvwrapper

    içinde
    echo "source ~/.local/bin/virtualenvwrapper.sh" >> ~/.bashrc
    

Sanal makine ve virtualenvwrapper kurulumu:

Önce, sanal ortamlarımızın depolanacağı dizini içeren ~/.local değişkenini dışa aktarıyoruz. Bunu .bashrc yapalım

export WORKON_HOME=~/.virtualenvs

şimdi de bu dizini oluştur

mkdir $WORKON_HOME

ve bu dışa aktarımı WORKON_HOME dosyasımıza koyun, böylece bu değişken otomatik olarak tanımlanır

echo "export WORKON_HOME=$WORKON_HOME" >> ~/.bashrc

Ayrıca, aşağıdaki gibi% fazladan hileler ekleyebiliriz. Ekstra bir sanal ortam yaratır, ayrıca ~/.virtualenvs dizinimize de yerleştirilir:

echo "export PIP_VIRTUALENV_BASE=$WORKON_HOME" >> ~/.bashrc 

Değişiklikleri yüklemek için Kaynak ~ / .bashrc

source ~/.bashrc

Çalışıyorsa test edin

Şimdi ilk sanal ortamımızı oluşturuyoruz. % Co_de% argümanı isteğe bağlıdır, kullanılacak Python sürümünü ayarlamak için kullanılır; örneğin ~/.bashrc olabilir.

mkvirtualenv -p python2.7 test

Ortamın kurulacağını göreceksiniz ve istemeniz artık aktif ortamınızın adını parantez içinde içerir. Ayrıca şimdi çalıştırırsanız

python -c "import sys; print sys.path"

Artık sistem site paketlerinizi kullanmadığı için pip bir çok görmelisiniz.

Çalışarak ortamınızı devre dışı bırakabilirsiniz

deactivate

ve tekrar çalışmak isterseniz, sadece

yazınız.
workon test

Son olarak, ortamınızı silmek istiyorsanız,

yazın
rmvirtualenv test

Enjoy!

yazarı sayesinde teşekkür ederiz. blog gönderisi .

    
verilen cevap Gerhard Burger 18.01.2013 15:23
8

Sanal ortamlar, bağımlılıkları proje başına temelinde yönetmek ve izole etmek için bir yol sunar. Ayrıca, sudo pip install durumundan da kaçınmaktadırlar. Bu, İşte de açıkladığım gibi bir güvenlik riskidir. Resmi Python belgeleri ayrıca sanal ortamların kullanımını teşvik eder. .

Python 2 ve Python 3 için sanal ortam oluşturma ve kullanmanın en kolay yolu virtualenv veya apt kullanarak apt-get yüklemektir. Her bir Python projesi için, bir virtualenv oluşturun ve ardından etkinleştirin. Virtualenv'nin belirli bir Python sürümü için spesifik olduğunu unutmayın. Etkinleştirdikten sonra, Python 2 veya 3'ü kullanıp kullanmadığına bakılmaksızın, her zamanki gibi Python paketlerini yüklemek için pip kullanın; Python 3 için pip3 kullanılmasına gerek yoktur. sudo sadece virtualenv yüklemek için kullanılır ve pip ile kullanılmaz, bu nedenle yukarıda bahsedilen güvenlik riskinden kaçınılır. Bunu yapmak için komutlar:

sudo apt update
sudo apt install virtualenv
cd ~/desired_directory  # cd to desired_directory
virtualenv venv  # create virtualenv named venv for default system Python, which is Python 2 for Ubuntu
source venv/bin/activate  # activate virtualenv
pip install -U pip  # upgrade pip in case it is outdated
pip install desired_package  # install desired_package

Python 3 için bir virtualenv oluşturmak istiyorsanız, virtualenv venv değerini şu şekilde değiştirin:

virtualenv venv -p python3

İşte 'de virtualenv için çeşitli ziller ve ıslıklarla ilgili daha fazla bilgi edinin.

    
verilen cevap edwinksl 13.06.2016 23:57
4

Kolaydır, python-virtualenv 'yi yüklersiniz. Sonra virtualenv komutuyla bir virtualenv oluşturabilirsiniz. Daha fazla bilgi için belgelerine bakın.

    
verilen cevap tumbleweed 18.01.2013 21:11
3

Python 3.3'ten (ve Ubuntu 15.10) bulunan venv modülü ile

Sanal ortamlar (venovlar) o kadar popülerdir ki, işlevsellik şimdi pythonun kendisinde (3.3'ten sonra) yer almaktadır. Ubuntu'da kullanmak için python3-venv dosyasını yüklemeniz gerekir ( ensurepip modülü mevcut olmadığından):

sudo apt-get install python3-venv

Bundan sonra kullanabilirsiniz

pyvenv myvirtualenv

myvirtualenv adlı sanal ortamı oluşturmak için. Daha sonra kullanabilirsiniz

source myvirtualenv/bin/activate

sanal ortamı etkinleştirmek için. Devre dışı bırakmak için

yazmanız yeterlidir
deactivate

DÜZENLEME: % Co_de% betiği pyvenv lehine reddedildi. Bu, Python yorumlayıcısının python3 -m venv 'sinin bağlı olduğu ve dolayısıyla Python yorumlayıcısının sanal ortam tarafından ne kullanacağı konusunda kafa karışıklığını önler. ( kaynak )

    
verilen cevap Gerhard Burger 20.06.2016 20:21

Etiketlerdeki diğer soruları oku