使用 Alembic 更新 Azure Database for PostgreSQL 灵活服务器

问题描述 投票:0回答:1

我想修改我在 Azure 上的 PostgreSQL 实例中的一些表,但我不知道如何使用 Alembic 执行升级。

我一直在关注 here 教程,其中包括 12:01:00 左右的 Heroku 部署。在这种情况下,一旦定义了更改,我们就可以运行

heroku run "alembic upgrade head"
来执行升级。但是,我找不到 Azure 的等效过程。

我的 postgres 实例位于 VNet 中并连接到 Web 应用程序。到目前为止,我已经对运行在附加网络应用程序中的服务器进行了代码更改。我推送到 GitHub,然后在 Azure 中部署更改。显然,如果该表已存在于 postgres 中,则我对原始模式所做的更改不会反映出来。我考虑过删除表格并再次声明,但这似乎是一个非常冒险的策略。

有人在这里提出了类似的问题,但仍未得到解答。我还检查了 AlembicAzure 的文档,但找不到任何东西。

postgresql azure alembic
1个回答
0
投票

对我有用的是:

  • 在我的虚拟环境中包含 Alembic(“requirements.txt”文件)
  • 确保“alembic.ini”文件位于我通过 GitHub 部署到 Azure 的项目的根目录
  • 更新“alembic/env.py”以解析 Azure 环境集 AZURE_POSTGRESQL_CONNECTIONSTRING 以使用以下方法为 Alembic 设置适当的连接值:
config.set_main_option('sqlalchemy.url', <connection_string>)
alembic upgrade head; gunicorn --bind=0.0.0.0 --timeout 600 application:app
© www.soinside.com 2019 - 2024. All rights reserved.