开发、测试、分期和生产模型

oli*_*and 6 postgresql linux deployment django

我正在开发一个带有 Postgres 数据库的由 Mill django 驱动的网站。我在本地开发并拥有 3 个 VPS 服务器用于测试、登台和生产。每个 VPS 运行自己的 Linux / Apache / Python / Postgres 堆栈,以及自己的数据库。

我开始发现,随着使用 git 的持续部署,暂存实际上变得多余(从暂存转移到生产需要交换 IP 地址,这需要重新启动 VPS)。

我能预见到临时有用的唯一时间是需要进行复杂的数据库迁移时,即使这样,由于临时和生产上的 Postgres 数据库没有镜像,可能会出现丢失迁移之间输入的数据的问题。

我的问题是我应该在登台和生产之间镜像 Postgres 吗?(如果是这样,怎么做?)我做得对吗?我在任何地方都找不到关于 Web 应用程序部署最佳实践的大量文档。

gar*_*les 1

我想说,如果您认为必须多次进行复杂的数据库迁移,那么您应该在暂存和生产之间镜像 Postgres。手动执行迁移可能很容易出错,因此您几乎肯定会收回在设置迁移方面投入的时间。

我不是 Postgres 专家,但这里是复制选项的概述。