gpt4 book ai didi

go - 将 golang 应用程序部署到 Heroku 时运行迁移

转载 作者:数据小太阳 更新时间:2023-10-29 03:19:57 25 4
gpt4 key购买 nike

我一直在尝试为 Heroku 上的 golang 应用程序设置迁移。我正在使用 native Go 模块 (vgo) 和官方 Heroku 构建包。对于迁移,我使用 migrate包。

问题是,我可以在主函数运行时运行迁移,但感觉有点老套,这意味着每次应用重新启动时它都会运行迁移。我更愿意在部署时只运行模式迁移。

我不确定这是如何实现的,当我登录到未安装 go 二进制文件的实例时,就像构建包只执行主要功能一样。

我可以接受使用 Heroku CLI 命令来执行此操作,但我无法在文档中或通过 Google 找到如何执行此操作。

最佳答案

您的所有依赖项都应该定义好,以便 Heroku 可以为您安装它们。对于 Go,Heroku 支持 godepgovendor .如果您还没有使用过,请选择一个并开始使用。

您的依赖文件应该提交到您的存储库。对于 godep,它是 Godeps/Godeps.json,对于 govendor,它是 vendor/vendor.json。您的依赖项本身不应被提交。

在添加对 migrate 的依赖后,它应该可以在 Heroku 上使用。您可以通过 heroku run bash 运行 migrate up 和其他命令。一旦您熟悉了手动运行迁移,您可能需要考虑添加 release phase command到您的 Procfile,以便在您部署新版本时自动应用迁移。

关于go - 将 golang 应用程序部署到 Heroku 时运行迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55553485/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com