我正在努力学习教程:在aws Elastic Beanstalk 上部署django
当我执行步骤6的子步骤5:时
git aws.push
我收到一条ImportError消息:
(tryhasinenv)Lee-Jamess-MacBook-Pro:tryhasin h0925473$ git aws.push
Traceback (most recent call last):
File ".git/AWSDevTools/aws.elasticbeanstalk.push", line 21, in <module>
from aws.dev_tools import *
File "/Users/h0925473/tryhasin_root/tryhasin/.git/AWSDevTools/aws/dev_tools.py", line 5, in <module>
import boto
ImportError: No module named boto
我不知道该怎么办。有人能告诉我怎么了吗?
在OSX上,我发现pip install boto
没有解决问题。问题是python没有指向pip安装。export PYTHONPATH=/usr/local/lib/python2.7/site-packages
为我解决了这个问题。
我通过运行单独解决了这个问题
$ sudo easy_install pip
这使用默认的python包安装程序来安装PIP
$ sudo pip install boto
我需要管理员权限来添加boto(我不知道这是否正确)。
然后运行$ eb start
在运行pip install boto
之后是否执行了pip freeze > requirements.txt
?
每次在本地安装新的python包后,您都需要更新requirements.txt
,以确保您的AWS实例也具有所有所需的包。
编辑:
如果你不是在中编写boto
的人,你需要安装它,然后自己pip冻结它。
尝试运行以下命令:
pip install boto
pip freeze > requirements.txt
git add .
git commit -m "Added boto"
git aws.push
我在Ansible上遇到了类似的问题,并使用修复了它
sudo apt install python-boto
我正在使用python3。因此,我不得不使用以下PYTHONPATH
命令指向站点包目录
export PYTHONPATH=/usr/local/lib/python3.8/site-packages
如果您正在使用ubuntu,请尝试以下操作:-
sudo apt install python-boto3
应该有效。