[爱因斯坦](https://res.cloudinary.com/practicaldev/image/fetch/s--UV0gHaBm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://kociaj.com/content /uploads/2019/06/einstein.jpg)

当我使用 Windows 操作系统时,我一直使用 WAMP 作为我的本地开发环境很长一段时间,然后我切换到 Mac OS 并使用了一段时间的 MAMP。在我的一位同事推荐devilbox之前就是这种情况。我试了一下,从那时起我一直将它用作我的本地开发环境。

目录

  • 什么是Devilbox

  • 要求

  • 配置

  • 项目目录

  • WordPress 安装

  • 结论

什么是魔盒

不,它与魔鬼无关。正如作者在官网描述的那样

Devilbox 是一个现代且高度可定制的 dockerized PHP 堆栈,支持完整的 LAMPMEAN 并在所有主要平台上运行。主要目标是轻松切换和组合本地开发所需的任何版本。

您不必担心您的操作系统是否支持它。 Devilbox 支持 LinuxMacWindows 操作系统!

Devilbox 仪表板

要求

  • 规格不错的电脑

  • 互联网连接

  • Docker已安装

  • Git 已安装

我相信我不需要通过前两个要求😄

要使用 Devilbox,您需要在计算机上安装 Docker。为了本文的目的,并且因为我使用的是 Mac OS,我将向您展示如何下载和安装 Docker for Mac。

安装Docker

有很多方法可以安装 Docker for Mac

一种方法是前往https://docs.docker.com/v17.12/docker-for-mac/install/#download-docker-for-mac并单击Get Docker for Mac(首选版本始终是稳定版) .下载完成后,打开刚刚下载的Docker.dmg文件,然后按照说明完成安装。

二是通过MacOS包管理器homebrew安装。要安装它,请打开您的终端并输入以下命令

~ brew install docker

[brew docker install](https://res.cloudinary.com/practicaldev/image/fetch/s--uNP_VfHv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://kociaj.com /content/uploads/2019/06/dockerinstall.png)

下一步是运行 docker,最简单的方法是按 CMD + SPACE 并键入 docker,然后按 Enter。当 docker 运行时,您应该会收到通知。

安装魔盒

Devilbox 不附带任何安装包,要_安装_它,您必须将存储库clone安装到本地计算机。为此,我们使用命令git clone REPOSTIORY_URL.git项目的 repo 托管在GitHub上。让我们继续安装devilbox。

打开终端窗口,输入git clone https://github.com/cytopia/devilbox并等待克隆过程完成。

[devilbox 已安装](https://res.cloudinary.com/practicaldev/image/fetch/s--sSYubjEq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://kociaj.com/content /uploads/2019/06/devilboxinstall.png)

当克隆完成并需要输入cd devilbox进入devilbox 目录时,您应该会看到以下内容。

[devilbox安装](https://res.cloudinary.com/practicaldev/image/fetch/s--9nMQue40--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://kociaj.com/content /uploads/2019/06/devilboxinstalled.png)

.ENV 文件

因为 Devilbox 可以通过.env文件进行配置,所以我们下一步是将env-example文件复制到.env到,以便我们可以运行以下命令:

cp env-example .env

启动魔盒

时间到了,启动魔盒!

要启动devilbox,您需要在终端上运行以下命令,而您是devilbox 目录。docker-compose up现在它将拉出所有需要的容器!第一次运行它可能需要一段时间,这取决于您的互联网连接。但是一旦你拥有了所有的图像,你应该能够在几秒钟内(~4-5 秒)启动所有容器。

[dockercomposeup](https://res.cloudinary.com/practicaldev/image/fetch/s--3rRlyGKe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://kociaj.com/content /uploads/2019/06/dockercomposeup.png)

提示!运行docker-compose up -d以在后台运行与当前终端窗口分离的容器。

拉取所有图像后,您应该能够访问devilbox localhost URL。默认情况下,Devilbox 正在监听端口80,这意味着您可以通过访问http://localhost访问它

启动和停止容器是通过docker-compose完成的。如果您以前从未使用过它,请查看他们的文档以了解[概述img](https://docs.docker.com/compose/reference/overview /) ,up img ,[停止 img](https://docs.docker.com/compose /reference/stop/) ,kill img ,[rm img](https://docs.docker .com/compose/reference/rm/),条日志img 和[拉img](https:// /docs.docker.com/compose/reference/pull/) 命令。

更多关于在这里启动 The Devilbox

配置Devilbox .ENV 文件

Devilbox 是可配置的,您可以轻松地在(PHP、APACHE、MySQL)或(PHP、NGINX、MariaDB)等开发环境之间切换。

只需使用您喜欢的编辑器打开.env文件并对其进行配置以符合您的口味环境。我正在使用Visual Studio Code

[envfile](https://res.cloudinary.com/practicaldev/image/fetch/s--g5b2uYiJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://kociaj.com/content /uploads/2019/06/envfile.png)

每个配置都是不言自明的,最常见的配置将是以下您更改PHP_SERVER版本,HTTPD_SERVERMYSQL_SERVER。如您所见,我正在运行PHP 7.2``NGINX stableMariaDB 10.3浏览 .env 文件以发现其他设置。

在此处阅读有关配置 env 文件的更多信息

项目目录

devilbox的项目目录位于devilbox目录./devilbox/data/www内,默认为空。这里是您所有项目的所在地。

对于每个项目,您都需要创建一个文件夹。

在这里阅读更多

Docroot 目录

docroot 目录是每个项目目录中的一个目录,网络服务器将从该目录中提供文件。

默认情况下,此目录必须命名为htdocs。这也可以更改,但不在本教程的范围内。

本地域后缀

默认域后缀(.env文件中的TLD_SUFFIX变量)是loc。这意味着您的所有项目都将在以下地址下可用:http://<project-directory>.loc。这也可以在.env文件中更改。TLD_SUFFIX!

WordPress 安装

让我们以从头到尾安装 WordPress 为例。

打开终端并运行以下命令:

  • cd devilbox/data/www

  • mkdir testwp创建一个名为testwp的目录

  • cd testwp进入我们刚刚创建的目录

  • 下载WordPresswget http://wordpress.org/latest.tar.gz

  • 通过运行tar -zxvf latest.tar.gz解压缩存档文件

  • 运行mv wordpress htdocs(还记得 docroot 目录吗?)

  • 打开http://testwp.loc/你应该会看到以下错误。

-

**testwp.loc**’s server IP address could not be found. testwp.loc’s server IP address could not be found. DNS_PROBE_FINISHED_NXDOMAIN

This happens because we have not added the local host DNS record. 

如果您导航到http://localhost/vhosts.php,您应该会看到类似这样的内容。

[hosterror](https://res.cloudinary.com/practicaldev/image/fetch/s--pOGpZgo3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://kociaj.com/content /uploads/2019/06/hosterror.png)

下一步是在我们的 hosts 文件中添加记录。为此,请运行sudo nano /etc/hosts以使用 nano 编辑器对其进行编辑并添加以下行

`127.0.0.1 testwp.loc`

点击保存。再次导航到http://testwp.loc/现在您应该会看到 WordPress 安装页面。

[wpinstall](https://res.cloudinary.com/practicaldev/image/fetch/s--hfy5umlV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://kociaj.com/content /uploads/2019/06/wpinstall.png)

现在的下一步是创建一个供 WordPress 使用的数据库。我们可以使用终端或使用devilbox附带的phpmyadmin来完成。要访问 phpMyAdmin,首先导航到http://localhost/index.php> 工具 > phpMyAdmin,以防它要求输入凭据作为用户输入root并将密码字段留空。

不从侧边栏创建新数据库,我将其命名为wp_testdb

完成后返回 WordPress 安装页面并继续并添加新创建的数据库。

注意!对于数据库主机而不是localhost,您需要输入mysql,因为这是在 devilbox 环境中运行的 MySQL 服务器(容器)的名称!

一切都应该顺利运行,您应该会看到新的 WordPress 站点在http://testwp.loc上启动并运行

[wplive](https://res.cloudinary.com/practicaldev/image/fetch/s--QvudzFT8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://kociaj.com/content /uploads/2019/06/wplive.png)

结论

Devilbox 是一个免费的开源项目,非常容易设置和运行 PHP、Nginx 和 MySQL 开发环境,按照本教程阅读 WordPress 安装大约需要 10 分钟!我已经使用 Devilbx 大约 1 年了,我对它非常满意,并且在我使用 PHP 7 进行项目时发现它非常方便,我必须切换到在 PHP 5.6 上运行的项目,它花费的时间更少超过15秒! ⌛

你以前用过Devilbox吗?你会试一试吗?

Logo

更多推荐