Install Python packages from a local package index

David Y.
jump to solution

The Problem

How can I use PIP to install packages from a local index on my hard drive instead of downloading them from PyPI.org?

The Solution

Assuming we want to install the requests package from a local package index stored in /opt/pythonpackages, we can run this command:

pip install requests --no-index --find-links file:///opt/pythonpackages

The --no-index flag will prevent PIP from accessing PIP, forcing it to search for the requests package in the URL provided to the --find-links flag – our local index at /opt/pythonpackages.

We can use these flags with any pip install command, including one to install from requirements.txt.

pip install -r requirements.txt --no-index --find-links file:///opt/pythonpackages

If we want to install packages from PyPI or our local index instead of excluding PyPI entirely, we can remove the --no-index flag. PIP will install the latest version it finds.

pip install -r requirements.txt --find-links file:///opt/pythonpackages

Considered "not bad" by 4 million developers and more than 150,000 organizations worldwide, Sentry provides code-level observability to many of the world's best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.

Sentry