Creating a Python Virtual Environment on CentOS 8
Updated by Linode Written by Linode
What is a Python Virtual Environment?
A Python virtual environment is an isolated project space on your system that contains its own Python executable, packages, and modules. Your Python applications and projects often have their own specific dependencies. With a virtual environment you can manage each of your project’s distinct dependencies without having them interfere with each other. You can use the virtualenv tool to create a virtual environment on your system. This guide will show you how to use virtualenv to create and run a Python virtual environment on a CentOS 8 Linode.
Before You Begin
Complete the Getting Started and Securing Your Server guides to prepare your system.
Update your system:
sudo yum update
Note
This guide is written for a non-root user. Commands that require elevated privileges are prefixed withsudo
. If you’re not familiar with thesudo
command, you can check our Users and Groups guide.
Create a Python Virtual Environment
NoteBy default, Python 3.6.8 is installed on CentOS 8.
To install Python’s virtual environment:
sudo yum install virtualenv
Create a
python-environments
directory in your user’s home directory and navigate to it:mkdir ~/python-environments && cd ~/python-environments
Create a Python virtual environment. By default, virtualenv will attempt to use your system’s default Python interpreter to create a new environment. Replace
env
with the name you would like to assign to your virtual environment.virtualenv env
Note
If your CentOS 8 system has another version of Python installed and you’d like to use it to create your virtual environment, use th e
--python
option to designate it. For example:virtualenv --python=python2.7 env
Validate that your environment is installed with the version of Python that you expect:
ls env/lib
You should see your
env
environments Python version:python3.6.8
Activate Your Virtual Environment
Activate the newly created virtual environment:
source env/bin/activate
The name of the working environment will appear in parentheses after it’s created.
(env) example_user@hostname:~/python-environments$
You can now begin installing Python packages and libraries that will remain isolated to your virtual environment.
Deactivate a Virtual Environment
To deactivate an active virtual environment, issue the following command:
deactivate
Your virtual environment will be deactivated and you should no longer see its name listed next to your command line’s prompt
example_user@hostname:~/python-environments$
More Information
You may wish to consult the following resources for additional information on this topic. While these are provided in the hope that they will be useful, please note that we cannot vouch for the accuracy or timeliness of externally hosted materials.
Join our Community
Find answers, ask questions, and help others.
This guide is published under a CC BY-ND 4.0 license.