【发布时间】:2020-02-20 12:06:40
【问题描述】:
我有一个基本的 Django 项目,我试图将它部署在 AWS Beanstalk 实例上。 Django 项目在我的本地机器上运行良好,但我试图让它在 AWS 上运行而束手无策。我尝试了多个教程(官方 AWS 教程、Real Python 和其他教程)都没有成功。我觉得我快到了,但是在没有错误地部署到 AWS 之后,当我尝试 AWS 生成的 URL 时,我得到一个“内部服务器错误”。我正在使用命令提示符中的 AWSEBCLI 包来部署项目。该项目是使用虚拟环境制作的,我使用的是装有 Windows 10 的 PC。
Django Folder Structure (project name is wt):
wt
|.gitignore
|db.sqlite3
|manage.py
|Pipfile
|requirements.txt
├+───.ebextensions
───|django.config
───|01_packages.config
├+───.elasticbeanstalk
├+───pages
├+───temp
└+───wt
───|settings.py
───|urls.py
───|wsgi.py
───|__init__.py
在上传之前,项目是 git commit'd 和 python manage.py collectstatic'd,在 AWS EB 中创建应用程序和环境后,我将 AWS URL 添加到 settings.py 的 ALLOWED_HOSTS 部分。
requirements.txt:
Django==2.2.2
Pillow==6.2.0
psycopg2==2.8.4
pytz==2019.1
sqlparse==0.3.0
django.config:
option_settings:
aws:elasticbeanstalk:container:python:
WSGIPath: wt/wsgi.py
01_packages.config:
packages:
yum:
git: []
postgresql93-devel: []
libjpeg-turbo-devel: []
我已经在这里上传了eb logs 文件:https://gofile.io/?c=KMat86
我真的不知道从这里开始做什么,没有花钱请人为我进行部署,但我希望自己能够做到这一点,这样我就可以在我喜欢的时候进行更改,并了解我可以在哪里做会出错。谢谢,迈克尔
【问题讨论】:
-
谢谢@ElRuso,我以前看过那些,但在你建议之后又看了一遍。我已经通过 SSH 连接到 EB 实例并运行 manage.py check 并发现 SQLite3 的依赖错误,我似乎无法使用 Django 2.2.2 解决。我将使用 Django 2.1 重建一个环境,因为其他人似乎对那个版本很幸运。这个周末我将重建这个项目,让你知道我是怎么做的。
标签: python django amazon-elastic-beanstalk