使用 docker 连接托管在 Azure 存储中的 Postgres 数据库

Connect Postgres db hosted in azure storage using docker

我正在尝试从 flyway 连接托管在 azure 存储帐户中的 postgres 数据库,flyway 是 运行 作为 docker 图像在 docker 容器

docker run --rm flyway/flyway -url=jdbc:postgresql://postgres-azure-db:5432/postgres -user=user -password=password info 但我收到错误 错误:无法从数据库获取连接

任何 idea/doc-link 都会有帮助

您在 this flyway issue

中有类似的错误(不同的上下文,相同的通用解决方案)

my missing piece for reaching private Cloud SQL instances from private worker pools in Cloud Build was a missing network route.
The fix is ensuring the Service Networking VPC peer has the "Export custom routes" setting enabled, and that the Cloud Router advertises the route.

在您的上下文 (Azure) 中,请参阅“Quickstart: Use Azure Data Studio to connect and query PostgreSQL

您也可以尝试使用 local Postgres instance first, and Azure Data Studio 进行测试。

在探索了几个选项之后,我使用 Azure 容器实例实现了 flyway。创建一个 ACI 来存储 flyway docker 图像并在 ACI 中执行命令,还创建了一个文件共享来保存配置文件和 sql 脚本。

我通过从 Jenkins 触发的 terraform 脚本创建的所有这些资源(存储、ACI、文件共享)。