Próbowałem od kilku dni skonfigurować Django w ramach Elastic Beanstalk Amazon Web Services. Myślę, że problem mam trafienia jest taka:Konfigurowanie Django na AWS Elastic Beanstalk: WSGIPath nie został znaleziony
ERROR - Your WSGIPath refers to a file that does not exist.
I przestrzegać samouczek here i wszystko idzie dobrze aż do końca etapu 6, ale nie mogę dla życia mnie dostać wszystko, aby wyświetlić inne niż ogólna strona Elastic Beanstalk z kroku 5, nr 2. Kiedy uruchamiam
./manage.py runserver
na moim komputerze lokalnym, wszystko działa tak jak powinno, ale nie mogę dostać, że strona do wdrożenia. Najpierw próbowałem z małą stroną Django, którą sam napisałem. To nie zadziałało, więc usunąłem wszystko, co zrobiłem i spróbowałem ponownie, co nie działało, więc usunąłem to wszystko i spróbowałem ponownie z nową instalacją django. Próbowałem tego kilka razy bawiąc się małymi rzeczami, ale myślę, że brakuje mi czegoś poważnego.
Dodałem plik python.config zgodnie z opisem w this tutorial.
Oto moja struktura plików:
-.git/
-.mysite/
-myapp/
-__init__.py
-models.py
-tests.py
-views.py
-mysite/
-__init__.py
-settings.py
-urls.py
-wsgi.py
-.ebextensions/
-python.config
-manage.py
-mysite.db
-requirements.txt
Z mojego settings.py:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': 'mysite.db',
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
}
}
Tutaj jest python.config:
container_commands: 01_syncdb:
command: "django-admin.py syncdb --noinput"
leader_only: true
option_settings:
- namespace: aws:elasticbeanstalk:container:python
option_name: WSGIPath
value: mysite/wsgi.py
- option_name: DJANGO_SETTINGS_MODULE
value: mysite.settings
- option_name: AWS_SECRET_KEY
value: <This is my secret key>
- option_name: AWS_ACCESS_KEY_ID
value: <This is my access key>
Czy istnieje inne miejsce, muszę definiować moje WSGIPath? Czy istnieje sposób, aby to zrobić za pomocą konsoli AWS? Czy powinienem pominąć EB i użyć EC2 bezpośrednio?
Ten problem został rozwiązany zgodnie z [tutaj] (https://forums.aws.amazon.com/thread.jspa?messageID=396656). Zapisałem cały kod w jednym katalogu i spakowałem (i przesłałem) cały katalog.Powinienem był spakować wszystkie odpowiednie pliki w tym katalogu, a nie sam katalog, więc po rozpakowaniu wszystkie pliki znajdą się w katalogu głównym witryny. Mam nadzieję, że to pomoże komuś innemu z tym samym problemem. Wydaje mi się, że natrafiłem na ten sam problem z przesyłaniem przez GUI i przez git. – Xephryous
Nie powinieneś edytować pytania, ale dodaj własną odpowiedź i ją zaakceptuj. – bikeshedder
Należy wziąć pod uwagę, że niezatwierdzone zmiany nie zostaną wdrożone, więc powinieneś mieć wszystkie zmiany w folderze ".ebextensions" zatwierdzonym w celu wdrożenia go z interfejsem EB CLI. – nisevi