相关疑难解决方法(0)

如何在AWS Elastic Beanstalk上使用Ubuntu 14.04获取Python Django应用程序

我想确保开发环境与生产环境一样工作.这是为了尽量减少"它对我有用"的指法.

因此我的团队选择了Ubuntu 14.04作为操作系统.

我们还想在AWS上部署.

当我在使用Elastic Beanstalk时通过QwikLabs示例时,我意识到没有选择选择Ubuntu 14.04.

在此输入图像描述

在此输入图像描述

如何在Ubuntu 14.04上运行的AWS EC2实例上部署Django应用程序?

谢谢.

python django ubuntu amazon-web-services

8
推荐指数
1
解决办法
3430
查看次数

Django AWS Elastic Beanstalk迁移数据库

我正在使用Elastic Beanstalk将Django项目部署到AWS,但我仍然无法迁移数据库.

我在哪里:我能够成功部署我的django项目并通过mysubdomain.elasticbeanstalk.com加载页面.页面加载没有错误,直到我到达需要进行数据库调用的页面.然后我得到一个错误,relation "accounts_user" does not exist LINE 1: SELECT COUNT(*) FROM "accounts_user"因为我的数据库尚未迁移.

我尝试过的东西:我尝试了很多不同的东西.幸运的是,有大量的stackoverflow帖子和几个教程.不幸的是,他们似乎都在使用不同的版本,他们的建议并不适用于我的项目.

我很清楚,我需要在foobar.config文件.ebextensions/夹内的文件中运行迁移.这是我想要做的基础:

container_commands:
  01_migrate:
    command: "python manage.py migrate --noinput"
    leader_only: true
Run Code Online (Sandbox Code Playgroud)

在日志中,我看到后部署脚本尝试运行但失败了.我没有收到有关错误的任何其他信息,我唯一看到的是"错误:01_migrate部署后脚本失败"

我发现我需要激活命令的虚拟环境,这是有道理的.从asdf我试试这个:

container_commands:
  01_migrate:
    command: "source /opt/python/run/venv/bin/activate && python rlg/manage.py migrate --noinput"
    leader_only: true
Run Code Online (Sandbox Code Playgroud)

但它不起作用.事实上,通过SSH我发现我甚至没有/ opt/python /文件夹,只有/ opt/aws /和/ opt/elasticbeanstalk /.所有教程和SO问题都引用了这个文件夹,但我没有它?

版本:Python 3.4.1,Django 1.7.7,AWS CLI 3.2.1,Postgres 9.3

django amazon-web-services amazon-elastic-beanstalk

7
推荐指数
2
解决办法
2573
查看次数