python:3.7-alpine镜像使用踩坑

5 篇文章 0 订阅

问题


     今天开发更新了代码,Jenkins在自动构建打包时报错了,查看日志后发现Dockerfile在执行pipenv install --deploy --system --ignore-pipfile时报错了,报错如下:

即pypi阿里源里面没有protobuf==3.12.1的包,匹配不到所以无法安装。

解决


     昨天在解决时区问题时发现python-alpine是一个极简的镜像,所以这次依旧怀疑是环境的问题,所以我在自己的centos机器是那个尝试使用阿里源安装这个版本的依赖:

   结果可以看出centos机器是可以从阿里源安装这个版本的依赖的,随后又在现版本的后端容器里尝试手动安装这个包:

   发现依旧无法安装这个版本的依赖,然后尝试安装3.12.2版本的依赖:

    此时问题解决可能需要让开发将版本进行调整适应容器,但为了比较有说服力,我使用python:3.7-alpine镜像起了一个容器,将下载的protobuf-3.12.1.whl文件挂载进去看能否安装成功,结果如下:

   结果可以看到alpine系统不支持protobuf-3.12.1版本的依赖,解决的方案要么换镜像,要么修改版本,与开发协商后更换版本不影响程序的运行,故又开发修改依赖版本,问题解决!!


 注意:python-alpine是一个极简的镜像,只有6.5M左右,但在选择使用时会产生比较多的问题,所以如果系统存储够用或者公司对镜像大小没有限制的话,还是建议使用比较完整的镜像来跑程序,这样会省事很多。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值