python 下载离线包以及安装
一、安装离线包
这里去搜你想要的包:
https://pypi.org/
之后安装:
pip install package.xxx.whl
或者直接下载下来,然后通过命令安装:
pip install package.xxxx.tar.gz
二、问题排查
error: command 'gcc' failed with exit status 1
其实只要看include缺什么就行了,我缺的时Python.h,所以就安装以下python的devel环境就好
yum install python-devel
Install python3-devel rpm package:
# yum install python3-devel
移除之前的包yum -y remove
下载 yum -y install nmap --downloadonly --downloaddir /opt/temp
安装 rpm –ivh 包名 --force --nodeps
Linux包库:
https://pkgs.org/download/python2-devel
三、下载离线包
在实际生产中,往往开发环境在内网,需要安装 Python 包的时候,比较麻烦,需要先在联网环境下在,然后导入内网环境进行安装。
1.下载(联网环境)
1.1 切换python版本
# 查看conda环境
conda env list
# 切换 python2 环境
activate python2
1.2 下载
# 下载单个离线 python 包
pip download -d offline_packages <package_name>
# 批量下载离线包
pip download -d offline_packages -r requirements.txt
# 示例下载pytest的离线包:
pip download -d pytest_packages pytest
2.导入内网安装
# 把离线下载的安装包,导入内网进行安装:
# 安装单个离线包
pip install --no-index --find-links=/offline_packages/ package_name
# 批量安装离线包
pip install --no-index --find-links=/offline_packages/ -r requirements.txt
三、实战
1、下载oss2离线包
mkdir offline_packages
cd offline_packages
# ①、创建依赖文件
vi oss2_requirements.txt
# oss2==2.17.0(单独下载)
aliyun-python-sdk-core==2.15.0
aliyun-python-sdk-kms==2.16.2
jmespath==0.10.0
crcmod==1.7
# ②、下载oss2 离线包
pip download --dest oss2_packages oss2==2.17.0
# 批量下载其他依赖离线包
pip download -d other_packages -r oss2_requirements.txt
# 压缩命令
tar -czf oss2_offline_packages.tar.gz offline_packages
# 测试安装
# 安装 oss2 离线包
pip install --no-index --find-links=oss2_packages oss2==2.17.0
# 安装其他依赖
pip install --no-index --find-links=other_packages -r oss2_requirements.txt
2、构建镜像
dockerfile 文件
# 基于公司基础镜像 py-java 来构建新的镜像
FROM base_image:v1
LABEL maintainer="bit@tradingbit.cn"
LABEL version="1.0"
LABEL description="Add oss2 dependencies by py-java image "
LABEL build_date="2024/08/31"
ARG USER=master
USER ${USER}
# 查看容器 /home/master 目录下的文件
# RUN ls -l /home/master
# 拷贝离线包到容器目录
COPY --chown=65500:65500 offline_packages /home/${USER}/
COPY --chown=65500:65500 offline_packages/oss2_requirements.txt /home/${USER}/
# 再次查看是否拷贝进容器/home/master 目录下
# RUN ls -l /home/master
# 安装 oss2 离线包及依赖
RUN pip install --no-index --find-links=/home/${USER}/oss2_packages oss2==2.17.0 \
&& pip install --no-index --find-links=/home/${USER}/other_packages -r /home/${USER}/oss2_requirements.txt
# 构建镜像
# docker build --network host -t bit-harbor.tradingbit.com/library/py_java:0.1.1c_37 -f dockerjava-pyfile_bash3.7 .
构建镜像命令:
docker build --no-cache --network host -t bit-harbor.tradingbit.com/library/py_java:0.1.1c_37 -f dockerjava-pyfile_bash3.7 .
相关文章:
python下载离线包
解决"command 'gcc' failed with exit status 1"错误问题
rpm离线安装整理
为者常成,行者常至
自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)