2014-04-25 19 views
15

我试图按照教程:deploy django on aws Elastic Beanstalk混帐aws.push:无模块名为博托

当我做的步骤6的子步骤5:

git aws.push 

我得到一个导入错误信息:

(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 

我不知道该怎么做。有人能告诉我什么是错的吗?

+0

我有同样的问题,并与这个固定:http://stackoverflow.com/questions/23354411/awss-elastic-beanstalk-not-using-my-virtualenv-no-module -named-boto/27308707#27308707 – Gabriel

回答

38

在OSX我发现pip install boto没有解决问题。 问题是python没有指向pip安装。 export PYTHONPATH=/usr/local/lib/python2.7/site-packages 为我解决了这个问题。

+0

我发布了PYTHONPATH的导出,但在尝试使用aws.push时仍然遇到了可怕的boto错误。当我继续尝试做pip安装boto时,我得到: 'File“/ usr/local/bin/pip”,第5行,在 from pkg_resources import load_entry_point 文件“/ System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py“,行2603,在 ... raise DistributionNotFound(req)#XXX在此处放置更多信息 pkg_resources.DistributionNotFound:pip == 1.1' –

+1

好吧,我通过从git克隆boto和安装这种方式来解决这个问题。 –

+0

谢谢,添加PYTHONPATH为我解决了这个问题。 –

4

你跑pip install botopip 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 
+0

这是因为没有安装博托。 我安装了boto,git add,git commit和git aws.push,并且eb status --verbose已经绿色并准备就绪,但我仍然可以进入EB默认的欢迎页面。 它应该转到django的欢迎页面。 我已经设置了所有配置并根据教程 – user2988464

+0

编辑了setting.py您是否运行了我添加的5个命令? – Alex

+0

是的,我跑了他们。我应该提供哪些信息,以便它能帮助您了解我做错了什么? – user2988464

16

我单独解决了这个运行:

$ sudo easy_install pip 

这将使用默认的Python包安装程序安装PIP

$ sudo pip install boto 

我需要管理员权限来添加伯特(我不知道如果多数民众赞成对或不)。

然后跑$ eb start

+0

这将为我安装启动并解决问题。 –

+0

你真的需要sudo吗? – kroe