نصب و راه‌اندازی Virtualenv و virtualenvwrapper در اوبونتو

در این نوشته با هم یاد می‌گیریم که محیط‌های توسعه‌ی مجازی پایتون چه کاربردی دارن و سپس گام به گام با هم نصب Virtualenv و virtualenvwrapper در اوبونتو رو یاد می‌گیریم و به عنوان نمونه یک محیط توسعه مجازی پایتون رو ایجاد می‌کنیم.

محیط مجازی توسعه پایتون به چه دردی می خوره؟!

اگر مثل من یک کاربر لینوکس تازه کار باشید احتمالا زیاد پیش اومده که سیستمتون رو به یک تیکه آجر به درد نخور تبدیل کنید!

معمولا اینطوریه که میایم و یک سری بسته‌ها رو بدون این که واقعا اطلاع داشته باشیم چی هستن نصب می‌کنیم و دست‌های پشت پرده [همون جهل ما:-)] سیستم  رو به یک کثافت واقعی تبدیل می کنن!

در مورد پایتون هم همین اتفاق صادقه، پایتون یک زبان اسکریپی فوق العاده زیباست با انبوهی از پکیج‌های متنوعی که معمولا برای هر پروژه ممکنه چندتا از این پکیج‌ها رو لازم داشته باشیم و اون‌ها نصب و استفاده کنیم.

ممکنه نیاز باشه برای یک پروژه از نسخه X.x یک پکیج استفاده کنیم و در پروژه‌ی دیگه نسخه‌ی Y.y رو بخوایم، این یکی از جاهایی هست که داشتن محیط‌های توسعه مجزا بهمون کمک می‌کنه بدون مشکل بتونیم از ورژن مختلف کتابخونه‌ی مورد نظرمون در کنارهم استفاده کنیم.

جای دیگه‌ای که محیط توسعه مجازی پایتون زیاد به کارمون میاد رو در پاراگراف اول گفتم، می‌خوایم با آزمون و خطا یک سری چیزها رو تست کنیم و از این طریق یاد بگیریم، پس بهتره برای تست‌هامون یک محیط جدا درست کنیم تا پایتون سیستم رو به گند نکشیم! یا قراره یک پکیج ناپایدار رو تست کنیم، بهتره اون رو جایی بجز محل پکیج‌های اصلی پایتون سیستم‌عامل نصب کنیم.

Virtualenv:

Virtualenv به ما کمک می‌کنه تا محیط مجازی پایتون بسازیم، چیزهایی که در هر یک از این محیط‌ها نصب می‌کنیم و یا پاک می‌کنیم مستقل از محیط‌های دیگه بوده و روی اون‌ها و مهم‌تر از اون بر روی global package directory سیستممون اثری نداره.

virtualenvwrapper:

virtualenvwrapper هم به کمکمون میاد تا این محیط‌های مجازی رو راحت‌تر ایجاد و به شکل یکجا مدیریت کنیم.

مراحل نصب:

[در این اموزش Virtualenv و virtualenvwrapper رو برای پایتون۳ و در سیستم عامل اوبونتو نصب می کنیم.]

بهتره بررسی کنیم آیا پایتون و pip رو نصب داریم یا نه؟

ترمینال رو باز کرده و کدهای زیر رو وارد می‌کنیم:

python3 --version
pip3 --version

اگر خروجی‌ای جز شکل بالا گرفتید[×] می‌تونید با استفاده از کدهای زیر Python3  و pip3  رو نصب کنید:

[×]توجه: عدد ورژن پایتون و یا pip نصبی شما در آینده قطعا تفاوت خواهد داشت، مستقل از عدد اون.

sudo apt-get install python3
sudo apt-get install python3-pip

برای نصب Virtualenv و virtualenvwrapper کد زیر رو در ترمینال وارد می‌کنیم:

sudo -H pip3 install virtualenv virtualenvwrapper

وقشته Virtualenv رو به shellی که استفاده می‌کنیم معرفی کنیم. [من از zsh استفاده می‌کنم پس کدهای زیر رو به انتهای فایل .zshrc اضافه می‌کنم، اگر شما از bash استفاده می‌کنید باید فایل .bashr رو تغییر بدهد.]

با ادیتور دلخواهتون فایل .zshrc [یا .bashr با توجه به توضیحات بالا] رو باز کنید. [به عنوان مثال با دستور زیر فایل .zshrc رو با ادیتور nano باز می‌کنم]

nano ~/.zshrc

این کدها رو به انتهای فایل بالا وارد می‌کنیم [مانند تصویر زیر]:

# virtualenv and virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/Code
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
#export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv
source /usr/local/bin/virtualenvwrapper.sh

zsh [یا bash] رو با دستور زیر راه‌اندازی مجدد می‌کنیم:

source ~/.zshrc  #ZSH
source ~/.bashrc #Bash

نکته‌ای که اینجا داریم اینه که ZSH به شکل پیش‌فرض اسم محیطی که در اون کار می‌کنیم رو مخفی می‌کنه، برای رفع این مشکل با دستور زیر فایل virtualenv.plugin.zshرو باز کرده و export VIRTUAL_ENV_DISABLE_PROMPT=1رو کامنت می‌کنیم.

nano ~/.oh-my-zsh/plugins/virtualenv/virtualenv.plugin.zsh

باید چنین چیزی داشته باشیم:

اگر با دستور بالا مشکل حل نشد پیشنهاد می‌کنم با یک تم دیگه‌ی ZSH هم امتحان کنید!

و در انتها یک محیط مجازی ایجاد کرده و وارد اون می‌شیم:

دستور mkvirtualenv برای ایجاد یک محیط مجازی توسعه پایتون جدید استفاده می‌شه، به شکل زیر:

mkvirtualenv YOUR_NAME -p python3

اگر دستور workon رو به تنهایی وارد کنیم لیست محیط‌هایی که ایجاد کرده‌ایم رو بهمون می‌ده.

و اگر بخوایم وارد هر محیط بشیم بعد از دستور workon اسم اون محیط توسعه مجازی رو وارد می‌کنیم.

به تصویر بالا دقت کنید وقتی وارد محیط rl شدم اون رو توی پرانتز و قبل از اسمم نوشته.


نویسنده: محمد حسین سالاری.

موارد مشابه

۱ دیدگاه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *