1

我正在编写一些运营团队部署在 Unix 服务器上的软件。该软件由操作部署到不同的环境。即 dev、uat 和 prod。

可执行文件将在每个环境中进行不同的配置,因此 env 特定的配置文件。

我需要过程尽可能简单,并限制人为错误的可能性(简单性肯定对后者有很大影响)。

标题中描述并反映在下面的方法的一个主要优点是部署运行手册与环境无关。因此,运行手册非常简单:

登录到目标部署机器 卷曲 zip 文件 解压缩 运行所需配置的可执行文件(dev、uat 或 prod)

我当前的 zip 示例:

Executable jar file
App-dev.properties
App-uat.properties
App-prod.properties

我正在检查我的选项并寻找有关最佳实践的建议,以使部署尽可能简单,同时最大限度地减少人为错误的影响。

4

1 回答 1

1

我不认为好的做法/坏的做法进入它。如果它对你有用,那就去做吧。

我想你问的真正原因是找出是否有任何可能的缺点。我能想到的只有:

  • 如果配置包含密码或密钥,那么在非生产机器中拥有一个综合 ZIP 文件可能会暴露更多的生产密钥/密码。

  • 这将导致存在更多 ZIP 的“版本”,这可能会导致跟踪它们的更多问题。(可能不是……因为应该有办法解决这个问题。)

  • (来自 thkala 的评论)如果您在其他平台上使用的 ZIP 文件中包含生产配置,则存在有人可能会意外在非生产平台上部署“生产”系统的风险。这可能会造成灾难性的后果;例如损坏的生产数据库或安全问题。

于 2012-06-16T15:09:01.780 回答