AWS aws.push ImportError:在Ubuntu中没有名为boto的模块

时间:2014-04-29 12:59:23

标签: python ubuntu amazon-web-services elastic-beanstalk

我试图按照本教程进行操作: http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_Ruby_rails.html

为了使用Ubuntu在AWS中部署Ruby on Rails应用程序。

一切顺利(我可以在本地运行我的应用程序),直到最后一步。当我运行aws.push时,我得到下一个错误。

   roberto@ubuntu:~/dev/myapp$ git aws.push
Traceback (most recent call last):
  File ".git/AWSDevTools/aws.elasticbeanstalk.push", line 21, in <module>
    from aws.dev_tools import * 
  File "/home/roberto/dev/myapp/.git/AWSDevTools/aws/dev_tools.py", line 5, in <module>
    import boto
ImportError: No module named boto

我已阅读此帖git aws.push: No module named boto并运行:

pip install boto
pip freeze > reqIuirements.txt
git add .
git commit -m "Added boto"
git aws.push

但结果仍然相同。

更新 我认为这个问题与我的python版本有关。 当我运行which python时,我得到/ usr / bin / python。如果我执行此文件夹,我会看到python,python2,python2.7,python3,python3.4。

当我运行python时,我得到:

Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 

我不知道该怎么做。

问题是由于权限问题导致它没有工作的第一个boto安装,我没有意识到。我跑了sudo pip install boto,这次一切都好了。

8 个答案:

答案 0 :(得分:37)

发生的事情是该特定AWS教程(http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_Ruby_rails.html)中提供的eb命令行界面未提供最新版本的boto。

当你做了

pip install boto

您安装了https://github.com/boto/boto的最新版本,解决了这个问题。

答案 1 :(得分:18)

如果在OSX上没有安装pip:

sudo easy_install pip
sudo pip install boto

答案 2 :(得分:8)

确保在安装Python模块时查看输出以验证安装是否正确进行。在Mac / Linux上,我必须运行sudo才能正确安装boto。

sudo pip install boto

答案 3 :(得分:3)

如果您在下载boto后仍然遇到问题,请确保您的脚本能够通过定义PYTHONPATH环境变量来访问您的站点包。

export PYTHONPATH=/usr/local/lib/python2.7/site-packages

答案 4 :(得分:3)

我在Mac OS High Sierra上安装boto面临同样的问题:

boto需要在系统中设置PYTHONPATH。 首先安装boto:

sudo pip install boto

安装后,它将返回日志中安装boto的路径。使用相同路径将导出添加为PYTHONPATH

  

要求已经满足:boto in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages(2.48.0)

export PYTHONPATH=/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages

添加PYTHONPATH后,python将能够检测到系统中的boto模块。

答案 5 :(得分:1)

执行这3个步骤有助于在首先安装pip / python时出现任何错误。

$ wget https://bootstrap.pypa.io/get-pip.py
$ sudo python get-pip.py 
$ sudo pip install boto

或者如果你在Mac上,那么你可以尝试安装Python3。

https://www.python.org/ftp/python/3.5.2/python-3.5.2-macosx10.6.pkg然后,安装它(如果你愿意,可以使用UI方式)。

$ sudo pip3 install boto

答案 6 :(得分:0)

另一个选择是运行:

python -m pip install --user boto

pip默认将Python软件包安装到系统目录(例如/usr/local/lib/python3.X)。
这需要root访问权限。

--user会在您的主目录中制作pip安装软件包,该软件包不需要任何特殊特权。在here中了解更多信息。

(*)确保您不在虚拟环境中使用pip install --user pkg_name。在here中了解更多信息。

答案 7 :(得分:-8)

在上面的帖子中查看我自己的评论。