2014-04-25 7 views
15

ich versuche, das Tutorial zu folgen: deploy django on aws Elastic Beanstalkgit aws.push: Kein Modul namens Boto

, wenn ich den Unterschritt der Schritt 6 tue 5:

git aws.push 

ich eine Import Meldung:

(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 

Ich habe keine Ahnung, was zu tun ist. Kann mir jemand sagen, was los ist?

+0

ich hatte das gleiche Problem und es mit diesem festgelegt: http://stackoverflow.com/questions/23354411/awss-elastic-beanstalk-not-using-my-virtualenv-no-module -named-boto/27308707 # 27308707 – Gabriel

Antwort

38

Auf OSX fand ich, dass pip install boto das Problem nicht behoben werden konnte. Das Problem war, dass Python nicht auf die Pip-Installation zeigte. export PYTHONPATH=/usr/local/lib/python2.7/site-packages löste dies für mich.

+0

Ich gab den Export für PYTHONPATH heraus, aber ich bekomme immer noch den gefürchteten Boto-Fehler, wenn ich versuche, aws.push. Wenn ich weitermachen und versuchen, die Pip-Installation Boto zu tun, bekomme ich: 'Datei"/usr/local/bin/pip ", Zeile 5, in von pkg_resources importieren load_entry_point Datei"/System/Library/Frameworks/Python.framework/Versionen/2.7/Extras/lib/python/pkg_resources.py ", Zeile 2603, in ... Raise DistributionNotFound (req) # XXX put weitere Informationen hier pkg_resources.DistributionNotFound: pip == 1.1' –

+1

Okay, ich habe das behoben, indem ich boto von git geklont habe und auf diese Weise installiert habe. –

+0

Danke, das Hinzufügen von PYTHONPATH löste das für mich. –

4

Haben Sie pip freeze > requirements.txt nach dem Sie pip install boto ausgeführt haben?

Sie müssen Ihre requirements.txt nach jeder Installation eines neuen Python-Pakets lokal aktualisieren, um sicherzustellen, dass Ihre AWS-Instanz alle erforderlichen Pakete enthält.

EDIT:

Falls Sie nicht derjenige, der boto in schrieb, müssen Sie es installieren und dann pip einfrieren selbst.

Versuchen Sie die folgenden Befehle ausführen:

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

es ist weil Boto nicht installiert. Nachdem ich boto installiert habe, git add, git commit und git aws.push, und eb status --verbose ist grün und bereit, aber ich kann immer noch auf die EB-Standard-Willkommensseite gehen. Es sollte stattdessen zu Djangos Willkommensseite gehen. Und ich habe die gesamte config und bearbeiten Sie die setting.py nach dem Tutorial – user2988464

+0

Haben Sie die 5 Befehle ausgeführt, die ich hinzugefügt? – Alex

+0

ja, ich lief sie alle. Welche Informationen sollte ich zur Verfügung stellen, damit Sie verstehen können, was ich falsch gemacht habe? – user2988464

16

löste ich diese separat ausgeführt wird:

$ sudo easy_install pip 

Dies das Python-Paket-Installer verwendet standardmäßig PIP

$ sudo pip install boto 

I Rechte Boto hinzuzufügen benötigt Admin zu installieren (ich weiß nicht, ob das ist, richtig oder nicht).

Dann $ eb start lief

+0

Dies wird den Boot für mich installieren und das Problem lösen. –

+0

brauchst du wirklich sudo ??? – kroe