0

我正在使用来自亚马逊 (AWS) 的关系数据库服务 (RDS) 设置 Django 部署。

我想知道更新数据库的最佳方法是什么?

我首先做了什么

首先,我在 project/.ebextensions/db-migrate.config 中使用容器命令:

container_commands:
  10_migrate:
    command: |
      source $PYTHONPATH/activate
      pipenv run python ./manage.py migrate
option_settings:
  aws:elasticbeanstalk:application:environment:
    DJANGO_SETTINGS_MODULE: <app>.settings

我发现这每次都会重置数据库。另外,我不能使用“createsuperuser”命令,因为我不能交互式地添加用户名和密码(日志给出了类似的错误)。

我现在应该做什么:

我将我的 IP 添加到来自数据库的传入规则中。然后我将 settings.py 中的数据库配置更改为 RDS 端点。

现在我可以使用迁移命令,并且可以创建一个超级用户。但这是通常的方式吗?你能告诉我更多关于安全的信息吗?

4

1 回答 1

0

解决方案:

我像在本地开发中一样使用迁移。我只是将配置添加到数据库设置中settings.py

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'xxxxxxx',
        'USER': 'xxxxxxx',
        'PASSWORD': 'xxxxxxx',
        'HOST': 'environment.xxx.region.rds.amazonaws.com',
        'PORT': '5432',
    }
}

不要忘记不提交或推送此/将凭据放入环境变量中。

于 2021-03-13T12:58:00.300 回答