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

DuckDuckGo switches to Apple Maps
OpenStreetMap kicked to the curb as search engine teams up with the Cupertino tech giant.
--- 16 Jan 2019 01:38 PM

North Korean hackers infiltrate Chile's ATM network after Skype job interview
Redbanc employee applied for a LinkedIn job and got a call from the world's most active hacker crews.
--- 16 Jan 2019 01:08 PM

German court dismisses Qualcomm's latest patent case against Apple: Report
Yet the ban on the iPhone 7 and 8 in Germany still stands.
--- 16 Jan 2019 12:29 PM

New Ethereum version postponed after discovery of serious security flaw
Ethereum Constantinople Upgrade hits last minute snag that saves many users from catastrophic losses.
--- 16 Jan 2019 11:09 AM

Semiconductor startup Wiliot raises $30 million led by AWS and Samsung
Wiliot makes a sticker sized battery-free Bluetooth sensor tag with an ARM processor that's powered by ambient radio frequencies.
--- 16 Jan 2019 08:47 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...