首页 > 解决方案 > 在生产环境中运行烧瓶迁移:无 ssh

问题描述

我正在使用 RDS 在 lambda 上运行 python 应用程序。我想使用flask-migrate,但每个示例都是命令行调用。

所以,我的问题是:是否可以在 lambda 实例上运行 flask-migration,无论何时应用程序启动或通过非命令行调用?

或者我真的需要将 RDS 实例打开到 Internet 以进行迁移(并从我的本地运行)。

标签: pythonflask-sqlalchemyflask-migrate

解决方案


我可以想到两个选项,而不涉及将您的数据库暴露在公共 IP 地址上:

  1. flask db upgrade在与您的 RDS 数据库位于同一 VPC 的容器或 EC2 上运行该命令。
  2. 在 lambda 函数中以编程方式运行该upgrade()函数:
from flask_migrate import upgrade

app = ...
db = ...
migrate = ...

upgrade()

推荐阅读