为了账号安全,请及时绑定邮箱和手机立即绑定

通过 .ebextensions 升级 pip

通过 .ebextensions 升级 pip

慕勒3428872 2022-05-19 18:41:18
我正在尝试升级 pip 以可能解决dist-info directory not found错误,但我的部署似乎完全忽略了任何尝试。是否有可能在任何 .ebextensions 脚本之前安装要求,这就是为什么我没有看到任何进展?如果是这样,我可以在什么时候升级 pip?我知道我可以通过 SSH 登录,但我不想在每次部署时都这样做。01_upgrade_pip.configcommands:  01_upgrade_pip:    command: /opt/python/run/venv/bin/pip install --upgrade pip    ignoreErrors: false这里的一切都是正确的,还是我一直在关注的资源已被弃用或其他什么?我曾尝试在我的 packages.config 中包含该命令,并希望这将允许首先进行升级,但仍然没有任何迹象表明它甚至被确认。packages:  yum:    git: []commands:  01_upgrade_pip:    command: /opt/python/run/venv/bin/pip install --upgrade pip    ignoreErrors: false除非有人要求特定的东西,否则我暂时不会包含日志。目前所有相关的信息都dist-info directory not found与我正在使用 pip 版本 9 的警报同时出现相同的错误,当 19 可用时(确认没有升级)。更新下面 的答案 下面提到的解决方案是使用 preinit 脚本。在/opt/elasticbeanstalk/hooks/preinit/08upgradepip.sh:python3 -m pip install --upgrade pip
查看完整描述

1 回答

?
www说

TA贡献1775条经验 获得超8个赞

你试过用preinit钩子吗?

https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/custom-platform-hooks.html

启动实例时,Elastic Beanstalk 会按此顺序运行 preinit、appdeploy 和 postinit。在对正在运行的实例进行后续部署时,Elastic Beanstalk 会运行 appdeploy 挂钩。configdeploy 挂钩在用户更新实例软件配置设置时运行。restartappserver 挂钩仅在用户启动应用程序服务器重新启动时运行。

根据文档:

将您希望钩子触发的脚本放在 /opt/elasticbeanstalk/hooks/ 文件夹的子文件夹之一中。


查看完整回答
反对 回复 2022-05-19
  • 1 回答
  • 0 关注
  • 111 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信