pip, virtualenv, django kurulumu

6 Yorum, 10 Ocak 2015 02:58, by Maksat Yalkabov, in
Merhaba arkadaşlar. Öncelikle türkçemde hatalar olabilir, şimdiden özür diliyorum :) . Bu yazımda size çok faydalı iki tane python paketinden, onların kurulum ve kullanımından bahsedeceğim: - pipvirtualenv Pip İlk önce PyPI nedir ona bakalım ? PyPI'ın açılımı Python Package Index. Tavsiyem türkçeye çevirmemek ama türkçeye çevirirsek de Python paket index'i. Bu da çok türkçe oldu be abi :) . Tüm Python paketlerini alfabetik olarak sıralanmış şekilde bulabilirsiniz burda. Sıradaki anahtar kelime PyPA. Açılımı Python Packaging Authority. Bu python paketlemedeki çoğu projeyi saklayan(maintain yapan) bir grup. Şimdi gelelim pip'e. PyPA tarafından tavsiye edilen python paketlerini kurmamızı sağlayan python paketi(evet kendisi de bir python paketidir). Kurulumu: Linux dağıtımlarının çoğunda python kurulu geliyor. Benim kullandığım dağıtımlarda hem python 2 hem de python 3 kurulu. Terminale sadece "python" yazdığında çıkan versiyon varsayılan python versiyonudur. Diğerini çağırmak için python ekine version başlığını eklemen yeterli yani "python3" ya da "python2" gibi. python 2.7.9 ve python 3.4 veya sonrası için pip varsayılan olarak http://youtubemp3now.com/tr/ kurulu geliyor. O yüzden kontrol etmek için aşağıdaki komutları(iki komutun da çıktıları aynı olmasına rağmen deneyebilirsiniz) terminale yazalım:
$ pip --version
ya da
$ python -m pip --version
Şimdi yukarıdaki python kelimesi varsayılan python için kontrol edecek o yüzden diğer python versiyonu için de yukarıda anlattığım şekilde deneyebilirsiniz mesela,
$ python3 -m pip --version
sonuç:
~ $ python -m pip --version
pip 6.0.6 from /usr/local/lib/python2.7/dist-packages (python 2.7)
gibi çıkarsa kurulu demektir. Komutun çıktısı "no module named pip" gibi sonuçlar verirse kurmak için aşağıdaki adımları izleyelim. Seçenek1: curl programı kurulu değilse kurun. Kurulu ise aşağıdaki komutu terminale yazın:
curl -kO https://bootstrap.pypa.io/get-pip.py
sonra o inen dosyanın dizininde aşağıdaki komutu çalıştıralım:
sudo python get-pip.py
Seçenek 2: -Ubuntu/Linux Mint için(Bu dağıtımlarda güncel olmayabilir, sorun değil kolay bir şekilde güncellenebilyor):
sudo apt-get install python-pip
-Arch/Manjaro için(programların hemen hemen hepsi günceldir):
sudo pacman -S python-pip
Bu kadar, istereniz
$ pip --version
ile kontrol edebilirsiniz. Kullanımına hızlıca bakacak olursak: -PyPI dan paket kurmak için:
(sudo) pip install Paketismi
-Paketle beraber kurulan dosyalara bakmak için:
(sudo) pip show --files Paketismi
-Hangi paketler güncel değil ona bakmak için:
(sudo) pip list --outdated
-Paket güncellemek için(En sevdiğim komut :) ):
(sudo) pip install --upgrade Paketismi
-Paketi kaldırmak için:
(sudo) pip uninstall Paketismi
-Son olarak da pip ile package index'de search yapabilirsiniz:
$ pip search Paketismi
Virtualenv Virtualenv izole python ortamları oluşturan bir paket. Örnek vermek gerekirse: Diyelim ki senin bir django 1.5 versiyonunda yaptığın projen var. Django'nun o versiyonunu "usr/lib/python2.7/dist-packages(ya da senin platformun standard lokasyonu neresi ise)" dizinine kurdun. Sonra django 1.6 versyionu ile bi proje yaptın diyelim, bu versiyonunu da o dizine kurdun. Sonra django 1.7 versiyonunu kurdun diyelim oraya. Şimdi sen güncellememen gereken uygulamayı farkkında olmadan güncellersen sorunlarla uğraşmak zorunda kalırsın. Tam burda virtualenv imdadımıza yetişiyor. Virtualenv size kendi kurulum dizinleri olan, yani diğer oluşturduğun virtualenv ortamları ve sisteminizdeki python kütüphanelerine karışmayan bir ortam ayarlıyor. Bu özellikle de yeni başlayanlar için mükemmel bir yardım. İşin bittiği zaman normal klasör siler gibi silebilirsin, çok kolay :) . Kurulum: Seçenek 1:
(sudo) pip install virtualenv
Seçenek 2: X.X versiyonunu kaynaktan kurmak için:
$ curl -kO https://pypi.python.org/packages/source/v/virtualenv/virtualenv-X.X.tar.gz
$ tar xvfz virtualenv-X.X.tar.gz
$ cd virtualenv-X.X
$ (sudo) python setup.py install
Seçenek 3: Ubuntu/Linux Mint için:
sudo apt-get install python-virtualenv
Arch/Manjaro için:
sudo pacman -S python-virtualenv
Kullanımı: En temel komut:
$ virtualenv env_ismi
Bu komut env_ismi şeklinde klasör ve dosyalar içeren bir klasör oluşturur. İçine bakabilirsiniz. Kendi python paketlerini kuracağı dizin vs içerir. Şimdi bu sanal ortamı aktifleştirelim:
$ source env_ismi/bin/activate
ile etkinleştirelim. Etkinleştiğini zaten aşağıdakı değişimden anlarsınız:
(env_ismi) $
Çıkmak için :
(env_ismi) $ cd
deyip tüm klasörlerden çıkalım ve
(env_ismi) $ deactivate
komutu ile de sanal ortamdan çıkalım. Soru: Bu sanal ortam hangi python sürümünü kullanıyor? Sisteminizin varsayılan sürümünü kullanıyor(Bu sadece sisteminde birden fazla sürüm olanlar için). Soru: Ben python'un başka sürümünü kullanmak istiyorum bu sanal ortamda o zaman ne olacak?
$ virtualenv --help
imdadımıza yetişiyor. Bu sefer sanal ortamımızı şu komutla aktifleştiryioruz:
$ virtualenv --python=python3.4 env_ismi 
$ source env_ismi/bin/activate
Artık o sanal ortamda python'un o sürümü bulunacak. Sanal ortamın içindeyken:
(env_ismi) $ pip freeze
komutu o anda kurulu paketleri listeler. Not: Virtualenv paketini kurmak için pip kullansanız kullanın ama genelde tavsiye edilmiyor. Çünkü pip o paketleri sisteme kuruyor, yani global oluyor. Zaten onu önlemek için virtualenv kullandık. pip'i biz en çok sanal ortamın içine paket kurmak için kullanacağız(sudo eki olmadan). Mesela django paketini kuralım o sanal ortamın içine:
(env_ismi) $ pip install django
komutu django'nun en yeni versiyonunu kurar.
(env_ismi) $ pip install django==1.6.8
komutu size o sürümü kuracak. Teşekkürler :)

Yazar Hakkında

Maksat Yalkabov Hacettepe Üniversitesi Elektrik-Elektronik Mühendisliği bölümünde öğrenim görmektedir. Birinci sınıfta aldığı C dersinden sonra programlama ile uğraşmaktadır. Programlama dili olarak Python kullanıyor. Web alanını daha çok seviyor.

6 Yorum

16 Ocak 2018 10:32

Teşekkür ederiz Murat. Güzel olmuş :)

16 Ocak 2018 10:32

sürüm belirtmeden kurarsan son sürümünü kuruyor zaten ben sadece sürüm belirterek nasıl kurabileceğimizi de göstermek istedim :)

16 Ocak 2018 10:32

Teşekkür ederim Ramazan

16 Ocak 2018 10:31

Elinize kaleminize sağlık çok güzel ve faydalı bir paylaşım olmuş...

16 Ocak 2018 10:31

Matlab ile ilgili gerçekten güzel bir yazı olmuş. Nette çok az bilgi var. Teşekkürler.

16 Ocak 2018 10:30

Maksat ellerine sağlık güzel dokuman olmuş. Ancak neden 1.7.2 yi tercih etmedin Django sürümü olarak :)

Yorumunuzu Paylaşırsanız seviniriz.

Girdiğiniz e-posta adresi kimseyle paylaşılmaz. Sadece kimlik olarak kullanılır.