2024-04-25 06:27:20 发布
网友
如果要脱机安装python libs及其依赖项,请在安装了相同操作系统、网络连接和python的计算机上完成以下步骤:
1)创建一个包含类似内容的requirements.txt文件(注意-这些是您希望下载的库):
requirements.txt
Flask==0.12 requests>=2.7.0 scikit-learn==0.19.1 numpy==1.14.3 pandas==0.22.0
创建需求文件的一个选项是使用pip freeze > requirements.txt。这将列出环境中的所有库。然后您可以进入requirements.txt并删除不需要的。
pip freeze > requirements.txt
2)执行命令mkdir wheelhouse && pip download -r requirements.txt -d wheelhouse将libs及其依赖项下载到目录wheelhouse
mkdir wheelhouse && pip download -r requirements.txt -d wheelhouse
wheelhouse
3)将requirements.txt复制到wheelhouse目录中
4)用tar -zcf wheelhouse.tar.gz wheelhouse将驾驶室归档到wheelhouse.tar.gz
tar -zcf wheelhouse.tar.gz wheelhouse
wheelhouse.tar.gz
然后将wheelhouse.tar.gz上载到目标计算机:
1)执行tar -zxf wheelhouse.tar.gz以提取文件
tar -zxf wheelhouse.tar.gz
2)执行pip install -r wheelhouse/requirements.txt --no-index --find-links wheelhouse安装libs及其依赖项
pip install -r wheelhouse/requirements.txt --no-index --find-links wheelhouse
pipdownload命令允许您下载包而不安装它们:
download
pip download -r requirements.txt
(在pip的早期版本中,它的拼写是pip install --download -r requirements.txt。)
pip install --download -r requirements.txt
然后,您可以使用pip install --no-index --find-links /path/to/download/dir/ -r requirements.txt安装下载的sdist,而无需访问网络。
pip install --no-index --find-links /path/to/download/dir/ -r requirements.txt
如果包在PYPI上,请将其及其依赖项下载到某个本地目录。 E、 g
$ mkdir /pypi && cd /pypi $ ls -la -rw-r--r-- 1 pavel staff 237954 Apr 19 11:31 Flask-WTF-0.6.tar.gz -rw-r--r-- 1 pavel staff 389741 Feb 22 17:10 Jinja2-2.6.tar.gz -rw-r--r-- 1 pavel staff 70305 Apr 11 00:28 MySQL-python-1.2.3.tar.gz -rw-r--r-- 1 pavel staff 2597214 Apr 10 18:26 SQLAlchemy-0.7.6.tar.gz -rw-r--r-- 1 pavel staff 1108056 Feb 22 17:10 Werkzeug-0.8.2.tar.gz -rw-r--r-- 1 pavel staff 488207 Apr 10 18:26 boto-2.3.0.tar.gz -rw-r--r-- 1 pavel staff 490192 Apr 16 12:00 flask-0.9-dev-2a6c80a.tar.gz
有些包裹可能需要手工归档到类似的tarballs中。当我想要一个更新(不太稳定)的版本时,我会做很多。有些包不在PYPI上,所以同样适用于它们。
假设在~/src/myapp中有一个格式正确的Python应用程序。~/src/myapp/setup.py将有install_requires列表,其中提到了/pypi目录中的一个或多个内容。就像这样:
~/src/myapp
~/src/myapp/setup.py
install_requires
/pypi
install_requires=[ 'boto', 'Flask', 'Werkzeug', # and so on
如果你想在运行你的应用程序的同时仍然对其进行黑客攻击,那么你可以这样做:
$ cd ~/src/myapp $ python setup.py develop --always-unzip --allow-hosts=None --find-links=/pypi
这样您的应用程序将直接从源目录执行。你可以破解一些东西,然后在不重建任何东西的情况下重新运行应用程序。
如果要将应用程序及其依赖项安装到当前的python环境中,请执行以下操作:
$ cd ~/src/myapp $ easy_install --always-unzip --allow-hosts=None --find-links=/pypi .
在这两种情况下,如果/pypi目录中不存在一个或多个依赖项,则生成将失败。它不会试图杂乱地安装互联网上丢失的东西。
我强烈建议在活动的virtual environment中调用setup.py develop ...和easy_install ...,以避免污染全局Python环境。这是(virtualenv就是)差不多的路要走。永远不要在全局Python环境中安装任何东西。
setup.py develop ...
easy_install ...
如果您构建应用程序的计算机的体系结构与您要在其上部署应用程序的计算机的体系结构相同,则只需将整个虚拟环境目录拖放到其中,您就可以将所有内容都拖到其中。不过,在进行tarball之前,必须使虚拟环境目录可重定位(请参见--relocatable选项)。注意:目标计算机需要安装相同版本的Python,并且您的应用程序可能具有的任何基于C的依赖项也必须预先安装在那里(例如,如果您依赖于PIL,则必须预先安装libpng、libjpeg等)。
如果要脱机安装python libs及其依赖项,请在安装了相同操作系统、网络连接和python的计算机上完成以下步骤:
1)创建一个包含类似内容的
requirements.txt
文件(注意-这些是您希望下载的库):创建需求文件的一个选项是使用
pip freeze > requirements.txt
。这将列出环境中的所有库。然后您可以进入requirements.txt
并删除不需要的。2)执行命令
mkdir wheelhouse && pip download -r requirements.txt -d wheelhouse
将libs及其依赖项下载到目录wheelhouse
3)将requirements.txt复制到
wheelhouse
目录中4)用
tar -zcf wheelhouse.tar.gz wheelhouse
将驾驶室归档到wheelhouse.tar.gz
然后将
wheelhouse.tar.gz
上载到目标计算机:1)执行
tar -zxf wheelhouse.tar.gz
以提取文件2)执行
pip install -r wheelhouse/requirements.txt --no-index --find-links wheelhouse
安装libs及其依赖项pip
download
命令允许您下载包而不安装它们:pip download -r requirements.txt
(在pip的早期版本中,它的拼写是
pip install --download -r requirements.txt
。)然后,您可以使用
pip install --no-index --find-links /path/to/download/dir/ -r requirements.txt
安装下载的sdist,而无需访问网络。如果包在PYPI上,请将其及其依赖项下载到某个本地目录。 E、 g
有些包裹可能需要手工归档到类似的tarballs中。当我想要一个更新(不太稳定)的版本时,我会做很多。有些包不在PYPI上,所以同样适用于它们。
假设在
~/src/myapp
中有一个格式正确的Python应用程序。~/src/myapp/setup.py
将有install_requires
列表,其中提到了/pypi
目录中的一个或多个内容。就像这样:如果你想在运行你的应用程序的同时仍然对其进行黑客攻击,那么你可以这样做:
这样您的应用程序将直接从源目录执行。你可以破解一些东西,然后在不重建任何东西的情况下重新运行应用程序。
如果要将应用程序及其依赖项安装到当前的python环境中,请执行以下操作:
在这两种情况下,如果
/pypi
目录中不存在一个或多个依赖项,则生成将失败。它不会试图杂乱地安装互联网上丢失的东西。我强烈建议在活动的virtual environment中调用
setup.py develop ...
和easy_install ...
,以避免污染全局Python环境。这是(virtualenv就是)差不多的路要走。永远不要在全局Python环境中安装任何东西。如果您构建应用程序的计算机的体系结构与您要在其上部署应用程序的计算机的体系结构相同,则只需将整个虚拟环境目录拖放到其中,您就可以将所有内容都拖到其中。不过,在进行tarball之前,必须使虚拟环境目录可重定位(请参见--relocatable选项)。注意:目标计算机需要安装相同版本的Python,并且您的应用程序可能具有的任何基于C的依赖项也必须预先安装在那里(例如,如果您依赖于PIL,则必须预先安装libpng、libjpeg等)。
相关问题 更多 >
编程相关推荐