pip包管理

pip是使用Python编写的用语软件包安装和管理的包管理器。很多软件包都可以通过Python Package Index(PyPI)来找到。

Python 2.7.9开始包含了pip(在Python 3中是pip3)。

操作命令

系统级别安装pip

  • Red Hat系列安装pip

sudo yum -y install python-pip

参考Linux: Install pip Client To Install Python Packages

  • Debian系列安装pip

sudo apt-get install python-pip

参考How to install pip on CentOS / RHEL / Ubuntu / Debian

  • 通过脚本命令安装

curl https://bootstrap.pypa.io/get-pip.py | python

个人用户环境安装pip

如果用户没有root权限,或者不能修改系统级别的Python安装,则可以通过以下方法在个人工作目录下部署Python工作环境

对于线上部署,建议使用非root账号部署应用,采用virtualenv是最佳选择

安装virtualenv

curl -O https://raw.github.com/pypa/virtualenv/master/virtualenv.py

创建虚拟环境

python virtualenv.py py_virtual

激活虚拟环境

. py_virtual/bin/activate

参考Linux: Install pip Client To Install Python Packages

Debian/Ubuntu也提供了发行版本的virtualevn

sudo apt-get install python-virtualenv

在Debian Jessie版本中,安装python-virtualenv会安装Python 3.4软件包,这个工具包是同时兼容Python 2和Python 3的。要建立Python 2 或 Python 3的虚拟环境,主要通过参数来区别

  • Python 2虚拟环境

virtualenv venv2
  • Python 3虚拟环境

virtualenv -p python3 venv3

要退出虚拟环境输入以下命令

deactivate

参考 Using Python 3 in virtualenv

如果使用Mac OS X,使用easy_install来安装virtualenv

sudo easy_install virtualenv

Red Hat系列安装pip

要安装软件包

pip install some-package-name

卸载也很方便

pip uninstall some-package-name

最重要的pip功能是可以管理所有包列表并且相应的版本,即通过一个"requirements"文件。这个文件可以有效地在一个隔离环境中(如其他主机)或虚拟环境中重建整个软件包组。

pip install -r requirements.txt

对于一些特定版本的python,可以用指定版本号来跟随pip,如${version}替换成2,3,3.4

pip${version} install some-package-name

古老而稳定并且已经End of Life的CentOS 5系列,操作系统的默认是Python版本2.4.3,对于Django"不友好"需要安装Python 2.7,但是即使是EPEL也只提供Python 2.6版本。

参考在古老的CentOS 5上安装Python 5以及virtualenv环境实践笔记。

升级所有pip软件包

pip freeze --local | grep -v '^\-e' | cut -d = -f 1  | xargs -n1 pip install -U

参考Upgrading all packages with pip

参考

Last updated