Installing a Virtual Environment for Python using Virtualenv

Posted Thursday, 04 March 2010 at 03:09 by Andrew Liu
Tagged: python | web development
Read more blogs...

 

OS: Fedora 10

 

When you install packages in python, they normally go into the site-packages folder, and are then available to all applications that use python.  Sometimes, you dont want this to occur.  You only want to install a package for yourself (or your application), and you dont want the chance that this may conflict with other applications.  That's where virtualenv comes in.  Virtualenv can be found at here at the python website.  Another good source of information comes from the author of Virtualenv, Ian Bicking, at this post.

 

So how do we do this?  Firstly, download virtualenv from the python website.  As always, I do this as root, and download source packages into the root directory.

 

$ cd
$ wget http://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.3.2.tar.gz
--2009-02-28 00:13:47--  http://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.3.2.tar.gz
Resolving pypi.python.org... 82.94.164.163, 2001:888:2000:d::a3
Connecting to pypi.python.org|82.94.164.163|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1027839 (1004K) [application/x-gzip]
Saving to: 'virtualenv-1.3.2.tar.gz'
100%[======================================>] 1,027,839    181K/s   in 5.5s
2009-02-28 00:13:54 (181 KB/s) - 'virtualenv-1.3.2.tar.gz' saved [1027839/1027839]
$ tar xvfz virtualenv-1.3.2.tar.gz
...
$ cd virtualenv-1.3.2
$ python setup.py install
...
Finished processing dependencies for virtualenv==1.3.2
$ which virtualenv
/usr/local/Python/bin/virtualenv

 

With virtualenv installed, we now have a binary called "virtualenv" that we can call.  This will create the virtual environment that we are after. Lets say we want to create a new project called "myapp".  We create the environment using the command below.

 

$ virtualenv myapp    New python executable in myapp/bin/python    Installing setuptools............done.
$ cd myapp
$ ls 
bin  include  lib
$ ls bin
activate  activate_this.py  easy_install  easy_install-2.6  python

 

We have a few shortcuts here in the bin directory that we need to use.  The first command is the "activate" command, which will set the paths needed to use this virtual environment.  I tend to like having a shortcut outside of the bin directory. So we'll create a symbolic link here.

 

$ ln -s bin/activate activate
$ ls 
activate bin  include  lib

 

And then to activate this, we need to source the file.  You can use the "source activate" command, or the shortcut ". activate".

 

$ . activate
(myapp)> ls
activate bin  include  lib

 

If successful, it will prefix your prompt with the words "(myapp)" to let you know that you are in a virtual environment.  Now you can work in your isolated environment!  When you are finished, naturally you should "deactivate" this virtual environment.

 

(myapp)> deactivate

 

And this will change the prompt back to normal.

 

 

 

 

 

Web News

Deal alert: Best Buy slashes $125 off its portable Google Assistant alarm clock
Want Google Assistant to wake you up for work? Then grab this $25 Insignia alarm clock from Best Buy.
--- 19 Oct 2018 06:12 AM

Square launches Terminal, a replacement for keypad credit card machines
The wireless device is said to have all-day battery life, can process payments over Wi-Fi or Ethernet internet connections and is also able to print receipts.
--- 19 Oct 2018 04:52 AM

Here's the next iPad Pro Apple should build: Specs and speculation
Apple's third-generation iPad Pro is likely to have important but incremental improvements over its predecessor and include technologies introduced in the iPhone X.
--- 19 Oct 2018 04:50 AM

Yep, there's a second Apple event this fall, and it's later than it's been in a decade
Tim Cook will be giving an ethics speech in Europe right around the time we thought there would be a new product event. So what's really going to happen? We have no idea, but we can guess real good.
--- 19 Oct 2018 04:06 AM

Google adds Compose integrations to trigger actions within Gmail
At launch, Compose actions integrate with Dropbox, Atlassian, Box and Egnyte.
--- 19 Oct 2018 04:01 AM

Company Blog


Search Behaviour

Posted Tuesday, 19 October 2010 at 05:58 by Andrew Liu


As an SEO provider, you have one main goal. Get your clients website to show up in search results fo...

Read more...



sm bus drivers missing in Device Manager

Posted Sunday, 18 April 2010
Updated Sunday, 24 February 2013 at 06:39 by Andrew Liu


When installing a new Windows XPinstallation, I seemingly always miss some drivers. One that trouble...

Read more...



Multiple Domains for SEO performance?

Posted Friday, 05 March 2010 at 23:13 by Andrew Liu


Online businesses and websites that cover a broad range of topics or one large topic are sometimes b...

Read more...



Tag Clouds - SEO or not?

Posted Thursday, 04 March 2010 at 04:34 by Andrew Liu


A tag cloud or word cloud is a visual depiction of tags or words related to a site, typically used t...

Read more...



Mozilla Thunderbird and Gmail IMAP Attachments Bug

Posted Wednesday, 03 March 2010 at 20:15 by Andrew Liu


I've been using Gmail since its early inception, and Iwas one of the first to utilise Gmail's IMAPfe...

Read more...



Read more blogs...