How to use virtualenv and pip

This article describes how to use the virtualenv and pip programs. The virtualenv program enables you to create custom Python environments, while the pip program enables you to install Python packages. By using these programs, you can ensure your Python applications have the exact environment setup that they need to function correctly.

  • On shared, reseller, and Turbo hosting accounts, you should use the Python Selector to install and manage Python environments. For information about how to use the Python Selector, please see this article.
  • For managed VPS and Dedicated server accounts activated in May 2023 or after, you should use the Python Selector to install and manage Python environments. For information about how to use the Python Selector, please see this article. (To determine if the Python Selector is available on your server, please see this article.)
  • For managed VPS and Dedicated server accounts activated before May 2023, follow the procedures below to set up your Python environments.

Using virtualenv to create and activate an environment

The virtualenv program allows you to create your own custom Python environments. A custom environment has its own installation directories, Python executables, packages, and modules. This means you can install any specific versions that an application may require. Because the environment is isolated, you do not have to worry about other programs installing incompatible versions or otherwise breaking the application's configuration.

To create a custom Python environment using virtualenv, follow these steps:

  1. Log in to your account using SSH.
  2. To make sure you are in your home directory, type the following command at the command line:
    cd ~
  3. To create the environment, type the following command. You can replace project with any name you want:

    virtualenv project
    

    Virtualenv sets up the Python environment and installs the pip program.

    By default, virtualenv installs the system-wide Python version, which is currently version 2.7. To install a specific Python version in the environment, use the -p option. For example, to create an environment that uses Python 3, type the following command:

    virtualenv -p python3 project
    
  4. To use the new environment, you must activate it first. To do this, type the following command:

    source project/bin/activate
    When the environment is active, the command prompt begins with (project), where project is the environment name.
  5. When you are done working in the environment, type the following command:

    deactivate

    The command prompt returns to normal.

Using pip to install Python packages

When you set up a custom Python environment with virtualenv, the pip program is installed as well. You can use the pip installer to install a large selection of Python packages into custom environments.

To use the pip program, follow these steps:

  1. If you have not already activated the environment, do so now. Type the following command, replacing project with the environment name:
    source ~/project/bin/activate
  2. After the environment is activated, you can use the pip program to install and manage Python packages:

    • To search for a specific package or set of packages, type the following command. Replace pkgname with the name of the package that you want to search for:
      pip search pkgname
      For example, to search for all MySQL-related packages, type pip search mysql.
    • To install a Python package, type the following command. Replace pkgname with the name of the package that you want to install:

      pip install pkgname
    • To uninstall a Python package, type the following command. Replace pkgname with the name of the package that you want to uninstall:

      pip uninstall pkgname

More Information

Did you find this article helpful? Then you'll love our support. Experience the A2 Hosting difference today and get a pre-secured, pre-optimized website. Check out our web hosting plans today.

We use cookies to personalize the website for you and to analyze the use of our website. You consent to this by clicking on "I consent" or by continuing your use of this website. Further information about cookies can be found in our Privacy Policy.