Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
vms:python:dev [2017/04/14 00:02]
admin [Virtualenvwrapper]
vms:python:dev [2017/05/31 02:54]
admin [Virtualenvwrapper]
Line 62: Line 62:
  
 Virtual Environments are used to isolate python versions and package dependencies for each specific project. Virtual Environments are used to isolate python versions and package dependencies for each specific project.
 +
 +We'll begin by creating specific users for python:
 +<​Code:​bash>​
 +> adduser py2
 +...
 +<​password>​
 +...
 +> adduser py3
 +...
 +<​password>​
 +...
 +
 +# To act as py2:
 +> su py2 
 +</​Code>​
  
 We'll install ''​virtualenv''​ for User only in order to allow coexistence of Python2 and Python3. As the virtualenv binary will bear the same name for 2 & 3, we'll move them on the go: We'll install ''​virtualenv''​ for User only in order to allow coexistence of Python2 and Python3. As the virtualenv binary will bear the same name for 2 & 3, we'll move them on the go:
Line 72: Line 87:
 > nano ~/.bashrc > nano ~/.bashrc
 ADD: ADD:
-Python ​virtualenv +USER INSTALLED BINARIES [virtualenv(wrapper)] 
-alias virtualenv2="~/.local/​lib/​python2.7/bin/virtualenv"​+export PATH=$PATH:~/​.local/​bin/​
  
 > source ~/.bashrc > source ~/.bashrc
-virtualenv2 ​--version+virtualenv ​--version
 15.1.0 15.1.0
 </​Code> ​ </​Code> ​
Line 123: Line 138:
 > mv ~/​.local/​bin/​* ~/​.local/​lib/​python3.4/​bin/​ > mv ~/​.local/​bin/​* ~/​.local/​lib/​python3.4/​bin/​
 > rm ~/​.local/​bin > rm ~/​.local/​bin
-> mkdir projects+> mkdir -p projects/code
 > nano .bashrc > nano .bashrc
 ADD: ADD:
  
-VirtualenvWrapper+USER INSTALLED BINARIES [virtualenv(wrapper)] 
 +export PATH=~/​.local/​bin:​$PATH 
 + 
 +# VIRTUALENVWRAPPER
 export WORKON_HOME=$HOME/​.virtualenvs export WORKON_HOME=$HOME/​.virtualenvs
-export PROJECT_HOME=$HOME/projects +export PROJECT_HOME=$HOME 
-export VIRTUALENVWRAPPER_PYTHON=/​usr/​bin/​python3 +export VIRTUALENVWRAPPER_PYTHON=/​usr/​bin/​python[2|3] 
-export ​PATH=~/.local/lib/python3.4/​bin:​$PATH +export ​VIRTUALENVWRAPPER_VIRTUALENV=$HOME/.local/bin/virtualenv 
-source $HOME/​.local/​lib/​python3.4/​bin/​virtualenvwrapper.sh+ 
 +source $HOME/​.local/​bin/​virtualenvwrapper.sh
  
 > source .bashrc > source .bashrc
Line 151: Line 170:
  
 === Projects management === === Projects management ===
 +
 +[[http://​wiki.strategicz.com/​vhyper/​doku.php?​id=vms:​python:​django#​using_a_shared_folder_to_host_your_projects]]
 +<​Code>​
 +> VBoxManage setextradata <​VM_NAME>​ VBoxInternal2/​SharedFoldersEnableSymlinksCreate/<​SHARE_NAME>​ 1
 +</​Code>​
 +
 +<​Code>​
 +> nano /etc/fstab
 +
 +# automount shuup project space
 +<​SHARE_NAME> ​  /​home/​dev3/​projects ​  ​vboxsf ​  ​defaults,​uid=1001,​gid=1001,​dmode=775,​fmode=774,​umask=002 ​ 0   0
 +
 +</​Code>​
  
 [[https://​virtualenvwrapper.readthedocs.io/​en/​latest/​projects.html#​project-management]] [[https://​virtualenvwrapper.readthedocs.io/​en/​latest/​projects.html#​project-management]]
 +
 +===== Django =====
 +
 +[[http://​wiki.strategicz.com/​vhyper/​doku.php?​id=vms:​python:​django]]