Pyenv - നിർദ്ദിഷ്ട പ്രോജക്റ്റിനായി ഒന്നിലധികം പൈത്തൺ പതിപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യുക


ഒരു ലിനക്സ് സിസ്റ്റത്തിൽ പൈത്തണിന്റെ ഒന്നിലധികം പതിപ്പുകൾ കൈകാര്യം ചെയ്യുന്നത് എളുപ്പമുള്ള കാര്യമല്ല, പ്രത്യേകിച്ച് തുടക്കക്കാർക്ക്. ഒരേ സെർവറിൽ വ്യത്യസ്uത പൈത്തൺ പതിപ്പുകൾ ഉപയോഗിച്ച് ഒന്നിലധികം പ്രോജക്റ്റുകൾ വികസിപ്പിക്കാനും പ്രവർത്തിപ്പിക്കാനും നിങ്ങൾ ആഗ്രഹിക്കുമ്പോൾ ചിലപ്പോൾ ഇത് കൂടുതൽ വഷളാകുന്നു. എന്നിരുന്നാലും, നിങ്ങൾ pyenv ഉപയോഗിക്കുകയാണെങ്കിൽ ഇത് സംഭവിക്കരുത്.

ലിനക്സ് സിസ്റ്റങ്ങളിൽ ഒന്നിലധികം പൈത്തൺ പതിപ്പുകൾ കൈകാര്യം ചെയ്യുന്നതിനുള്ള ലളിതവും ശക്തവും ക്രോസ്-പ്ലാറ്റ്ഫോം ഉപകരണവുമാണ് Pyenv.

  • ആഗോള പൈത്തൺ പതിപ്പ് ഓരോ ഉപയോക്താവിന്റെയും അടിസ്ഥാനത്തിൽ മാറ്റുന്നു.
  • ഓരോ പ്രോജക്റ്റിന്റെയും അടിസ്ഥാനത്തിൽ പ്രാദേശിക പൈത്തൺ പതിപ്പ് ക്രമീകരിക്കുന്നു.
  • അനക്കോണ്ട അല്ലെങ്കിൽ വെർച്വൽ എൻവയോൺമെന്റുകൾ സൃഷ്uടിച്ച വെർച്വൽ എൻവയോൺമെന്റുകളുടെ മാനേജിംഗ്.
  • ഒരു എൻവയോൺമെന്റ് വേരിയബിൾ ഉപയോഗിച്ച് പൈത്തൺ പതിപ്പിനെ മറികടക്കുന്നു.
  • പൈത്തണിന്റെയും മറ്റും ഒന്നിലധികം പതിപ്പുകളിൽ നിന്നുള്ള കമാൻഡുകൾ തിരയുന്നു.

സാധാരണയായി, നിങ്ങളുടെ എല്ലാ ആപ്ലിക്കേഷനുകളും പ്രവർത്തിപ്പിക്കാൻ പൈത്തണിന്റെ ഒരു സ്ഥിരസ്ഥിതി പതിപ്പ് ഉപയോഗിക്കുന്നു, ആപ്ലിക്കേഷനിൽ നിങ്ങൾ ഉപയോഗിക്കാൻ ആഗ്രഹിക്കുന്ന പതിപ്പ് നിങ്ങൾ വ്യക്തമായി വ്യക്തമാക്കിയില്ലെങ്കിൽ. എന്നാൽ നിങ്ങൾ ഒന്നിലധികം പതിപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്തിരിക്കുമ്പോൾ, നിങ്ങൾ ഉപയോഗിക്കാൻ ആഗ്രഹിക്കുന്ന ശരിയായ പൈത്തൺ പതിപ്പിലേക്ക് നിങ്ങളുടെ കമാൻഡ് കൈമാറാൻ ഷിംസ് (ലൈറ്റ്വെയ്റ്റ് എക്സിക്യൂട്ടബിളുകൾ) ഉപയോഗിക്കുന്നതിനുള്ള ലളിതമായ ഒരു ആശയം pyenv നടപ്പിലാക്കുന്നു.

ഈ ഷിമ്മുകൾ നിങ്ങളുടെ PATH-ന് മുന്നിലുള്ള ഒരു ഡയറക്uടറിയിൽ pyenv ആണ് ചേർത്തിരിക്കുന്നത്. അതിനാൽ നിങ്ങൾ ഒരു പൈത്തൺ കമാൻഡ് പ്രവർത്തിപ്പിക്കുമ്പോൾ, അത് ഉചിതമായ ഷിം തടസ്സപ്പെടുത്തുകയും pyenv-ലേക്ക് കൈമാറുകയും ചെയ്യുന്നു, അത് നിങ്ങളുടെ ആപ്ലിക്കേഷൻ വ്യക്തമാക്കിയ പൈത്തൺ പതിപ്പ് സ്ഥാപിക്കുകയും ശരിയായ പൈത്തൺ ഇൻസ്റ്റാളേഷനിലേക്ക് നിങ്ങളുടെ കമാൻഡുകൾ കൈമാറുകയും ചെയ്യുന്നു. pyenv എങ്ങനെ പ്രവർത്തിക്കുന്നു എന്നതിന്റെ ഒരു അവലോകനമാണിത്.

ഈ ലേഖനത്തിൽ, Linux-ൽ pyenv-ന്റെ ഏറ്റവും പുതിയ പതിപ്പ് എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാമെന്ന് ഞങ്ങൾ കാണിക്കും. മുകളിൽ ലിസ്റ്റുചെയ്uതിരിക്കുന്ന ആദ്യത്തെ മൂന്ന് ഉപയോഗ കേസും ഞങ്ങൾ പ്രദർശിപ്പിക്കും.

ലിനക്സിൽ Pyenv എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാം

1. നിങ്ങളുടെ ബന്ധപ്പെട്ട ലിനക്സ് വിതരണത്തിൽ താഴെ പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് ഉറവിടങ്ങളിൽ നിന്ന് വ്യത്യസ്ത പൈത്തൺ പതിപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യുന്നതിന് ആവശ്യമായ എല്ലാ പാക്കേജുകളും ആദ്യം ഇൻസ്റ്റാൾ ചെയ്യുക.

------------ On Debian/Ubuntu/Linux Mint ------------ 
$ sudo apt install curl git-core gcc make zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev libssl-dev

------------ On CentOS/RHEL ------------
# yum -y install epel-release
# yum install git gcc zlib-devel bzip2-devel readline-devel sqlite-devel openssl-devel

------------ On Fedora 22+ ------------
# yum install git gcc zlib-devel bzip2-devel readline-devel sqlite-devel openssl-devel

2. അടുത്തതായി, അതിന്റെ Github ശേഖരണത്തിൽ നിന്ന് ഏറ്റവും പുതിയ pyenv സോഴ്uസ് ട്രീ പിടിച്ചെടുത്ത് താഴെ പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് $HOME/.pyenv പാത്തിൽ ഇൻസ്റ്റാൾ ചെയ്യുക.

$ git clone https://github.com/pyenv/pyenv.git $HOME/.pyenv

3. ഇപ്പോൾ നിങ്ങൾ pyenv ഇൻസ്റ്റാൾ ചെയ്ത പാതയിലേക്ക് പോയിന്റ് ചെയ്യുന്നതിനായി PYENV_ROOT എന്ന എൻവയോൺമെന്റ് വേരിയബിൾ സജ്ജീകരിക്കുകയും അത് കയറ്റുമതി ചെയ്യുകയും വേണം. മറ്റ് സിസ്റ്റം കമാൻഡുകൾ പോലെ pyenv കമാൻഡ്-ലൈൻ യൂട്ടിലിറ്റി പ്രവർത്തിപ്പിക്കുന്നതിന് നിങ്ങളുടെ PATH-ലേക്ക് $PYENV_ROOT/bin ചേർക്കുക.

നിങ്ങളുടെ ഷെല്ലിലേക്ക് pyenv init ചേർത്തുകൊണ്ട് നിങ്ങൾ ഷിമ്മുകളും സ്വയം പൂർത്തീകരണവും പ്രവർത്തനക്ഷമമാക്കേണ്ടതുണ്ട്. കാണിച്ചിരിക്കുന്നതുപോലെ നിങ്ങളുടെ $HOME/.bashrc ബാഷ് സ്റ്റാർട്ടപ്പ് ഫയലിൽ ഇതെല്ലാം ചെയ്യുക.

$ vim $HOME/.bashrc 

ഈ ഫയലിന്റെ അവസാനം ഇനിപ്പറയുന്ന വരികൾ പകർത്തി ഒട്ടിക്കുക.

## pyenv configs
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"

if command -v pyenv 1>/dev/null 2>&1; then
  eval "$(pyenv init -)"
fi

4. മുകളിൽ പറഞ്ഞ മാറ്റങ്ങൾ വരുത്തിക്കഴിഞ്ഞാൽ, നിങ്ങൾക്ക് ഒന്നുകിൽ $HOME/.bashrc ഫയൽ ഉറവിടമാക്കാം അല്ലെങ്കിൽ കാണിച്ചിരിക്കുന്നതുപോലെ ഷെൽ പുനരാരംഭിക്കാം.

$ source $HOME/.bashrc
OR
$ exec "$SHELL"

ലിനക്സിൽ ഒന്നിലധികം പൈത്തൺ പതിപ്പുകൾ എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാം

5. ഈ സമയത്ത്, നിങ്ങൾ pyenv ഉപയോഗിക്കാൻ തുടങ്ങാൻ തയ്യാറായിരിക്കണം. നിങ്ങൾ ഏതെങ്കിലും പൈത്തൺ പതിപ്പ് ഇൻസ്റ്റാൾ ചെയ്യുന്നതിനുമുമ്പ്, ഈ കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് ലഭ്യമായ എല്ലാ പതിപ്പുകളും കാണാൻ കഴിയും.

$ pyenv install -l

6. നിങ്ങൾക്ക് ഇപ്പോൾ pyenv വഴി ഒന്നിലധികം പൈത്തൺ പതിപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യാൻ കഴിയും, ഉദാഹരണത്തിന്.

$ pyenv install 3.6.4
$ pyenv install 3.6.5

7. pyenv-ന് ലഭ്യമായ എല്ലാ പൈത്തൺ പതിപ്പുകളും ലിസ്റ്റുചെയ്യുന്നതിന്, ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക. ഇത് pyenv വഴി തന്നെ ഇൻസ്റ്റാൾ ചെയ്ത പതിപ്പുകൾ മാത്രമേ കാണിക്കൂ.

$ pyenv versions

8. ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഗ്ലോബൽ പൈത്തൺ പതിപ്പ് പരിശോധിക്കാം, ഈ സമയം, സ്ഥിരസ്ഥിതി പതിപ്പ് സിസ്റ്റം സജ്ജമാക്കിയതായിരിക്കണം, പൈൻവി അല്ല.

$ pyenv global

pyenv കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് ആഗോള പൈത്തൺ പതിപ്പ് സജ്ജമാക്കാൻ കഴിയും.

$ pyenv global 3.6.5
$ pyenv global

9. നിങ്ങൾക്ക് ഇപ്പോൾ ഓരോ പ്രോജക്റ്റ് അടിസ്ഥാനത്തിലും പ്രാദേശിക പൈത്തൺ പതിപ്പ് സജ്ജമാക്കാൻ കഴിയും, ഉദാഹരണത്തിന്, $HOME/python_projects/test-ൽ നിങ്ങൾക്ക് ഒരു പ്രോജക്റ്റ് ഉണ്ടെങ്കിൽ, ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് അതിന്റെ പൈത്തൺ പതിപ്പ് സജ്ജമാക്കാൻ കഴിയും.

$ cd python_projects/test
$ pyenv local 3.6.5
$ pyenv version		#view local python version for a specific project 
OR
$ pyenv versions

10. ലിനക്സിലും മറ്റ് യുണിക്സ് പോലുള്ള സിസ്റ്റങ്ങളിലും പൈത്തണിനുള്ള virtualenvs, conda എൻവയോൺമെന്റുകൾ എന്നിവയുടെ മാനേജ്മെന്റ് ഓട്ടോമേറ്റ് ചെയ്യുന്ന pyenv-virtualenv പ്ലഗിൻ വഴിയാണ് Pyenv വെർച്വൽ എൻവയോൺമെന്റുകൾ കൈകാര്യം ചെയ്യുന്നത്.

ഇനിപ്പറയുന്ന കമാൻഡുകൾ ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഈ പ്ലഗിൻ ഇൻസ്റ്റാൾ ചെയ്തുകൊണ്ട് ആരംഭിക്കാം.

$ git clone https://github.com/yyuu/pyenv-virtualenv.git   $HOME/.pyenv/plugins/pyenv-virtualenv
$ source $HOME/.bashrc

11. ഇപ്പോൾ നമ്മൾ project1 എന്ന പ്രോജക്റ്റിന് കീഴിൽ venv_project1 എന്ന ഒരു ടെസ്റ്റ് വെർച്വൽ എൻവയോൺമെന്റ് ഇനിപ്പറയുന്ന രീതിയിൽ സൃഷ്ടിക്കും.

$ cd python_projects
$ mkdir project1
$ cd project1
$ pyenv virtualenv 3.6.5 venv_project1

12. ഇപ്പോൾ നിങ്ങൾ എല്ലാ പൈത്തൺ പതിപ്പുകളും ലിസ്റ്റ് ചെയ്യുമ്പോൾ, നിങ്ങളുടെ വെർച്വൽ എൻവയോൺമെന്റുകളും അവയുടെ പ്രാദേശിക പൈത്തൺ പതിപ്പുകളും സ്ക്രീൻഷോട്ടിൽ കാണിച്ചിരിക്കുന്നതുപോലെ ലിസ്റ്റ് ചെയ്യണം.

$ pyenv versions

13. ഒരു virtualenv സജീവമാക്കുന്നതിന്, ഉദാഹരണത്തിന് venv_project1, ഇനിപ്പറയുന്ന കമാൻഡ് ടൈപ്പ് ചെയ്യുക.

$ pyenv activate venv_project1

ശ്രദ്ധിക്കുക: pyenv-virtualenv പ്ലഗിന്റെ ഏറ്റവും പുതിയ പതിപ്പ് ആദ്യമായി ഉപയോഗിക്കുമ്പോൾ നിങ്ങൾക്ക് താഴെ സന്ദേശം ലഭിച്ചേക്കാം.

pyenv-virtualenv: prompt changing will be removed from future release. configure `export PYENV_VIRTUALENV_DISABLE_PROMPT=1' to simulate the behavior.

നിങ്ങളുടെ $HOME/.bashrc ഫയലിൽ PYENV_VIRTUALENV_DISABLE_PROMPT=1 എന്ന ലൈൻ എക്uസ്uപോർട്ട് ചേർക്കുക, അവിടെ നിങ്ങൾ മറ്റ് pyenv കോൺഫിഗറേഷനുകൾ ചേർത്തു, ഊന്നിപ്പറയുന്ന സ്വഭാവം അനുകരിക്കുന്നതിന് ഫയൽ ഉറവിടമാക്കുക.

14. സജീവമാക്കിയ virtualenv പ്രവർത്തനരഹിതമാക്കുന്നതിന്, ഈ കമാൻഡ് പ്രവർത്തിപ്പിക്കുക.

$ pyenv deactivate

കൂടുതൽ വിവരങ്ങൾക്ക്, താഴെ പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് എല്ലാ pyenv കമാൻഡുകളും ലിസ്റ്റ് ചെയ്യാം.

$ pyenv commands

കൂടുതൽ വിവരങ്ങൾക്ക്, pyenv Github ശേഖരണത്തിലേക്ക് പോകുക: https://github.com/pyenv/pyenv

pyenv ഉപയോഗിക്കുന്നത് വളരെ ലളിതമാണ്. ഈ ഗൈഡിൽ, ഇത് എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാമെന്ന് ഞങ്ങൾ കാണിച്ചുതന്നു, കൂടാതെ ലിനക്സ് സിസ്റ്റത്തിൽ ഒന്നിലധികം പൈത്തൺ പതിപ്പുകൾ കൈകാര്യം ചെയ്യുന്നതിനുള്ള ചില ഉപയോഗ കേസുകൾ ഞങ്ങൾ കാണിച്ചുതന്നു. ഈ ടൂളിനെക്കുറിച്ച് എന്തെങ്കിലും ചോദ്യങ്ങൾ ചോദിക്കാനോ നിങ്ങളുടെ ചിന്തകൾ പങ്കിടാനോ ചുവടെയുള്ള ഫീഡ്uബാക്ക് ഫോം ഉപയോഗിക്കുക.