通过 Git 部署的专业工作流程?

通过 Git 部署的专业工作流程?

我编写了一组 bash + crontab 脚本,基本上可以让我使用一台新的 Linux 服务器并向其部署一个 git repo。一切都很好,但这是一个相当零碎的过程,我想知道是否有一些关于这种工作流程更专业/更完善版本的指示?

还是我错过了机会? 是否有更好的低预算/无预算方式在云虚拟机上部署服务器+应用程序?我应该研究吗?

编辑关于 Salt 或 Ansible 等配置管理工具,我尽量避免走这条路,因为要花上数周的时间才能学会这些工具,并决定它们是否能满足我的需求。我不是全职的 DevOps,我更喜欢尽可能少的变动部件。但如果我的这个说法是错误的,请告诉我!

答案1

我绝对会说你需要一个配置管理解决方案,因为我认为这是专业的解决方案。我首选的是 Ansible,因为它非常容易学习和设置,并且只需要 ssh 访问服务器。

Ansible 有一个 git 模块,可以将 repo 克隆到您需要的任何目录,并且您可以根据需要非常轻松地将私钥复制到新服务器。它还具有用于复制文件和运行脚本的模块,以及几乎所有您需要的功能。

我构建了一个 Ansible 剧本来创建 Rackspace 云服务器并对其进行配置 - 包括检出 Web 代码的 git repo 并设置 nginx 以将其用作 webfoot。

我知道你需要花一些时间来学习它,但这段时间是值得的,因为它会为你节省未来的时间。你已经有一些脚本了,将它们移植到 ansible 上——即使一开始你只是调用脚本——也非常容易。学习它不会是一个需要数周时间的过程。慢慢开始,慢慢积累——你不必一次尝试做太多事情。

相关内容