投票结果:本地 WordPress 开发

Avatar of Chris Coyier
Chris Coyier

DigitalOcean 为您旅程的每个阶段提供云产品。立即开始使用 200美元免费信用额度!

我们三个月前发起了一项投票,询问大家在本地运行 WordPress 时使用了什么类型的 本地开发环境。在撰写本文时,我们获得了 2,623 票,因此这里具有一定的参考意义。特别是因为问题措辞为

如果您在本地运行 WordPress(即运行 PHP、MySQL 和 Web 服务器),您是如何操作的?

假设您正在使用本地环境。(请务必这样做。)

以下是结果图片

(如果您看不到,请不用担心,我们即将详细介绍结果。)

获胜者,以61%的比例,是使用某种带 UI 的软件来管理它。提到了 WAMP / MAMP / AMPPS,但也提到了“类似的带 UI 的软件”,我认为这与我们稍后将看到的相关。此选项的受欢迎程度是其他任何选项的 3 倍以上。

Vagrant15%的比例位居第二。我相信其中一些是 Vagrant 的直接使用,但也有一部分是针对预先配置的 WordPress 项目,例如 VCCWVVVScotch Box

第三名是直接安装,占比13%。所有这些其他选项至少会尝试隔离本地开发的依赖项。这意味着如果您有多个本地开发环境(非常常见),它们不需要共享相同的依赖项。即使您进行所有 WordPress 开发,这可能也很有用。也许一个项目正在运行 PHP 7 和 MySQL 5.7,但另一个项目在某些旧版主机上运行 PHP 5.3 和 MySQL 4。在开发中匹配这些生产版本是一个好主意,这样您就可以对本地操作在生产环境中是否有效具有一定的信心。如果没有本地隔离,您将被迫在所有开发环境中使用相同版本的软件。如果您只处理一个项目,这可能就足够了!

Docker7%的比例位居倒数第二。尽管 Docker 看起来很流行,但显然它在 WordPress 用户中的采用率还没有特别高。

Gilbert Pellegrom 有 一篇关于 Vagrant 和 Docker 的优秀比较文章

[Vagrant] 的缺点是每个虚拟机不仅包含您的应用程序及其所有库,还包含整个客户机操作系统,其大小可能达到几十 GB。

然而,Docker 使用“容器”,其中包含您的应用程序及其所有依赖项,但与其他容器共享内核(操作系统)。容器在主机操作系统上作为隔离的进程运行,但不受任何特定基础设施的约束(它们可以在任何计算机上运行)。

所有这些的结果是什么呢?

  • Vagrant 更易于理解,也更容易上手,但可能非常占用资源(内存和空间方面)。
  • Docker 的架构更难理解,也更难上手,但速度更快,使用的 CPU 和 RAM 更少,并且可能比 Vagrant VM 使用的空间更少。

作为一个个人轶事,我现在在我的 Mac 上使用 Docker 来处理所有 WordPress 相关的事务,并且发现设置和理解它并不特别困难。困扰我的一件事是最初没有将我的 MySQL 数据放在“卷”上,这使得数据库在 Docker 重新构建容器时容易被清除(但我已经解决了这个问题)。我只是 按照这个操作

5% 的人投票选择“其他”,并被要求在评论中发表意见。有 63 条评论,对于现在的 CSS-Tricks 文章来说,数量很少!

22 条评论提到了 Laravel Valet,所以我认为这里应该特别提及一下。

Valet 是专为 Mac 极简主义者设计的 Laravel 开发环境。没有 Vagrant,没有 `/etc/hosts` 文件。您甚至可以使用本地隧道公开共享您的网站…

Laravel Valet 将您的 Mac 配置为在机器启动时始终在后台运行 Nginx。然后,使用 DnsMasq,Valet 将 *.dev 域上的所有请求代理到安装在您本地机器上的网站。

换句话说,这是一个闪电般快速的 Laravel 开发环境,大约使用 7 MB 的 RAM。

还有 8 次提及 Local by Flywheel(Mac 和 Windows),它看起来像是管理本地 WordPress 开发环境的不错的 UI。

如果您使用 Valet 或 Local,您可能已在“类似的带 UI 的软件”类别或“其他”类别中投票,因此,根据 CSS-Tricks 投票的传统,数据有点松散。