1、问题
基于数据安全和网络安全,常常生产服务器是隔离网络的,常常出现缺包情况。打好镜像,也会随着算法的改动,需要新加包,如果能自己解决就好了。
2、解决方法
如果服务器无法联网安装Python包,但可以通过本地电脑上传资料到服务器,可以使用以下步骤将 Python 的 ibm_db
包安装到服务器上:
在本地电脑上下载 ibm_db
包:
- 在本地电脑上使用
pip
命令下载ibm_db
包及其依赖项,并保存到一个文件夹中:
pip download ibm_db --no-deps --dest=/path/to/downloaded/packages
这将在指定路径(/path/to/downloaded/packages
)下载 ibm_db
包及其依赖的所有文件。
-
将下载的文件传输到服务器:
- 使用安全的方式(如SFTP、SCP或FTP)将下载的文件夹或文件上传到服务器。
-
在服务器上安装
ibm_db
包:- 登录到服务器,并确保将下载的文件放置在服务器上。
- 使用以下命令安装本地文件夹中的
ibm_db
包: -
pip install --no-index --find-links=/path/to/downloaded/packages ibm_db
替换
/path/to/downloaded/packages
为你实际下载文件所在的路径。
-
注意:本地系统和python与服务器不一致时,会报错”xxxx.whl is not a supported wheel on this platform"
请在本地安装命令加上两个参数:--python,--platform,例如,服务器是python3.8,系统是centos7,在本地按照时,需指定:
pip download pymongo --python-version 38 --platform manylinux1_x86_64 --no-deps --dest=/mnt/e/packages
终端安装时执行:
pip install --no-index --find-links=/home/jovyan/work /home/jovyan/work/pymongo-4.6.1-cp38-cp38-manylinux1_x86_64.whl
3、结果
成功没有联网的情况下安装 ibm_db
包。确保下载的文件夹包含了 ibm_db
及其依赖项的所有文件,并使用正确的路径进行安装。
同时,通过这种方式,在服务器不联网的情况下,在jupyter镜像中成功安装了pymongo和其依赖包。