在无网络连接的环境中,部署Python应用时经常需要预先准备基础的依赖包。尤其是当使用Docker容器,而容器配置不允许联网时,手动安装依赖包成为必要步骤。以下是一种高效的方法来处理这种情况:
手动安装Python依赖包
在某些场景下,Docker容器可能只包含最基础的依赖,且不允许联网。这时,我们可以通过以下步骤手动安装所需的Python依赖包:
1. 预先下载依赖包:在有网络的环境中,预先下载所有必需的whl文件。
2. 依赖包列表:以下是一些示例依赖包,这些文件应提前下载并准备好:
package_path= [
'pypdf2-3.0.1-py3-none-any.whl',
'transformers-4.43.3-py3-none-any.whl',
'safetensors-0.4.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl',
'filelock-3.15.4-py3-none-any.whl',
'regex-2024.7.24-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl',
'huggingface_hub-0.24.6-py3-none-any.whl',
'tokenizers-0.19.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl',
'fsspec-2024.6.1-py3-none-any.whl',
'torch-2.4.0-cp310-cp310-manylinux1_x86_64.whl',
'nvidia_cudnn_cu12-9.1.0.70-py3-none-manylinux2014_x86_64.whl'
]
3. 批量安装依赖:为了确保依赖的正确安装,避免因顺序问题导致的联网需求,可以使用以下命令批量安装所有whl文件:
pip install --no-index --find-links={package_path} {package_path}/*.whl
--no-index`:指示pip不从PyPI下载任何包。
--find-links={package_path}`:指定本地文件路径,让pip从该路径中查找并安装依赖。
通过这种方法,我们可以确保在无网络环境下也能顺利安装所有必需的Python依赖包,从而保证应用的顺利部署和运行。