How to Create Python Virtual Environments on Ubuntu


Sometimes we have more than one project running in one machine and sometimes they require same package with different version. In that case, installing package with one version will crash other project that require different version of the package. And that is why we need Virtual Environment.

Virtual environment is tool that creates separate environment for separate project. virtualenv is Python module that allows to create Virtual Environment for Python projects which could break system tools or other projects. All Python packages are called as Python module.

This article will share you details how to create virtual environment for python.


You need to have non-root user account logged in with sudo privileges to set up on your server. Pip installed which will install Python modules. We will install Python3 modules in this article.

Step 1. Install virtualenv

Open the terminal by using the CTRL+ALT+T keyboard shortcut or by running a search in Ubuntu Dash. Now run any of the following command to install virtual environment.

sudo apt-get install python3-virtualenv


python3 -m pip install virtualenv


pip3 install virtualenv

You can check environment version by running following command:

virtualenv --version

Step 2. Create Virtual Environment

Run any of the following command to create virtual environment:

python3 -m venv newenv


virtualenv -m newenv

This will create Virtual Environment folder named newenv. This folder is the Virtual Environment and all Python modules for this environment will install in this folder.

Step 3. Activate Virtual Environment

Use this command to activate virtual environment

source newenv/bin/activate

This will prefix environment name in Terminal window when you activate Virtual Environment like this:

(newenv) root@root-host:~# 

Step 4. Install Python modules for specific Virtual Environment.

When you have Virtual Environment activated and you install new Python modules, it will be installed for that specific environment only. It will not affect Python modules installed Globally. Install Python modules with Pip with running command:

pip3 install <package_name>

Step 4. Deactivate virtual Environment

If you need to deactivate environment, run bellow command:



So now you have created virtual environment named newenv. You can create as many Virtual Environment as you want with any name.