Debian软件包与Fabric部署

ave*_*age 6 deployment debian package fabric

使用Debian软件包部署Web应用程序而不是使用Fabric有什么优缺点?我只使用过Debian软件包.

我也有兴趣听到你在使用Fabric时遇到的问题,并且你希望你使用过Debian软件包.

use*_*109 2

德班

它是一个包管理器。它允许用户通过系统上的dpkg各种程序来管理包。apt

它为您做什么:

  • 从源代码构建包
  • 处理包依赖关系、包版本
  • 安装、更新和删除系统上的程序
  • 在低级别工作,编译的二进制文件可能是特定于系统的(i386,amd64)

缺点:

  • 要部署应用程序,必须在包中提供配置,或者必须使用某些配置作为默认配置
  • 不同架构的系统使用不同的二进制文件

织物

它是一个 Python 库和命令行工具,用于简化 SSH 在应用程序部署或系统管理任务中的使用。

它为您做什么:

  • 配置您的系统
  • 在本地/远程服务器上执行命令(系统管理)
  • 部署您的应用程序,进行回滚,主要通过脚本自动化部署
  • 在更高层次上工作,不依赖于系统架构,而是依赖于操作系统和包管理器

如何使用 pip、virtualenv 和 Fabric 来处理部署?

缺点:

  • 它不能取代系统上的包管理器,它在其之上管理包
  • 您应该了解特定于您的包管理器/操作系统的系统、命令文件夹

更新

当 Fabric 出现的时候我就已经熟悉了 Debian。所以 Debian 一直是我最喜欢的工具。我为什么使用 Fabric,它简化了应用程序的部署,并且对于开发人员来说是方便的工具。以下是我选择使用 Debian 而不是 Fabric 的一些原因:

  1. 当我不投入生产时,仍在开发和测试东西。当添加/修改代码时,Debian 在大多数情况下都是合适的。Fabric 只是简化了从开发到生产的过渡。
  2. 有时,如果我只在我的机器上部署应用程序,Fabric 似乎有点矫枉过正。如果部署不涉及很多机器,需要多个依赖项,我会坚持使用 Debian。
  3. 当无法选择回滚或撤消时。Fabric 只会安全或不安全地执行你的命令,如果你不擅长处理系统错误/异常,请在使用 Fabric 之前尝试一下。(Debian是系统的一部分,所以必须使用Debian和其他系统工具)