如何为EC2 Elastic Beanstalk上的Django设置我的settings.py
文件以使用Postgres RDS?使用Postgres在Elastic Beanstalk上设置Django
These docs只给MySQL的settings.py
。
如何为EC2 Elastic Beanstalk上的Django设置我的settings.py
文件以使用Postgres RDS?使用Postgres在Elastic Beanstalk上设置Django
These docs只给MySQL的settings.py
。
您可能只需要更改数据库对象中的引擎设置即可。您需要将psycopg2安装到您的环境中。这是我的样子。只需填写你的数据库的信息。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
'NAME': '', # Or path to database file if using sqlite3.
'USER': '', # Not used with sqlite3.
'PASSWORD': '', # Not used with sqlite3.
'HOST': '', # Set to empty string for localhost. Not used with sqlite3.
'PORT': '', # Set to empty string for default. Not used with sqlite3.
}
}
使用psycopg2,和使用环境变量(弹性魔豆内可供您):
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': os.environ['RDS_DB_NAME'],
'USER': os.environ['RDS_USERNAME'],
'PASSWORD': os.environ['RDS_PASSWORD'],
'HOST': os.environ['RDS_HOSTNAME'],
'PORT': os.environ['RDS_PORT'],
}
}
你需要(使用pip freeze > requirements.txt
制造),包括画中画requirements.txt文件psycopg2并且可能还会通过在.ebextensions/package.config文件中包含以下内容来安装Postgres依赖项postgresql-devel(文件名不一定是packages.config,这正是我所使用的):
packages:
yum:
postgresql-devel: []
我不太确定我是否遵循NAME,HOST等的值。我认为它们不应该是空白的,而应该看起来像MySQL的设置?:''HOST':os.environ [' RDS_HOSTNAME']' – 2014-10-23 21:03:17
这是一个体面的开始:http://ashokfernandez.wordpress.com/2014/03/11/deploying-a-django-app-to-amazon-aws-with-nginx-gunicorn-git/ – 2014-10-24 18:37:13