gpt4 book ai didi

git - 对于可能在不同服务器上的实例之间存在细微配置差异的 Web 应用程序,什么是可接受的生产部署

转载 作者:行者123 更新时间:2023-12-02 21:18:34 25 4
gpt4 key购买 nike

关闭。这个问题是opinion-based .它目前不接受答案。












想改进这个问题?更新问题,以便 editing this post 可以用事实和引用来回答它.

4年前关闭。




Improve this question




所以现在我们使用 Git 作为我们的版本控制。我们还使用 docker compose 来管理部署

我想处理这样一个事实,即我们有一些客户希望他们自己的网站版本与 docker-compose.yml 略有不同(例如由 docker 定义的环境变量)。这会导致 git pull 担心 docker-compose.yml 文件中未提交的更改。

我在想我可以从 master 打开一个分支,然后随着时间的推移从 master 中提取更改,这样我们就不必担心配置特定文件的更改。

当然,我可能会完全遗漏一些东西,并且有一个简单的解决方案可以解决所有这些问题。

最佳答案

标准的 git 方式是创建一个分支并经常从 master 更新它。这是一种非常常见的方法。

事实上,大多数开源项目都使用非常相似的技术,即从主存储库中获取一个分支,贡献者在分支存储库上进行自定义更改。

作为一个小评论,最好在 env_file 中维护环境变量,因为 env 值可能与客户端不同。这样,您在 docker-compose 文件中的手动 merge 就会减少。

更新

另一个可能值得评估的想法是 git submodules .基本上,您可以将需要不同的东西放入 git 子模块中,并在您的 repo 和客户端的 repo 之间保持父模块相同。这样客户端指向他自己的子模块,不需要维护单独的分支。

关于git - 对于可能在不同服务器上的实例之间存在细微配置差异的 Web 应用程序,什么是可接受的生产部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48450570/

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