使用Devilbox的Web开发环境
[](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 操作系统时,我一直
[](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 堆栈,支持完整的 LAMP 和 MEAN 并在所有主要平台上运行。主要目标是轻松切换和组合本地开发所需的任何版本。
您不必担心您的操作系统是否支持它。 Devilbox 支持 Linux、Mac 和 Windows 操作系统!
要求
-
规格不错的电脑
-
互联网连接
-
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
[](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
并等待克隆过程完成。
[](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 目录时,您应该会看到以下内容。
[](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 秒)启动所有容器。
[](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
完成的。如果您以前从未使用过它,请查看他们的文档以了解[概述](https://docs.docker.com/compose/reference/overview /) ,up
,[停止
](https://docs.docker.com/compose /reference/stop/) ,kill
,[rm
](https://docs.docker .com/compose/reference/rm/),条日志
和[拉
](https:// /docs.docker.com/compose/reference/pull/) 命令。
更多关于在这里启动 The Devilbox
配置Devilbox .ENV 文件
Devilbox 是可配置的,您可以轻松地在(PHP、APACHE、MySQL)或(PHP、NGINX、MariaDB)等开发环境之间切换。
只需使用您喜欢的编辑器打开.env
文件并对其进行配置以符合您的口味环境。我正在使用Visual Studio Code
[](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_SERVER
和MYSQL_SERVER
。如您所见,我正在运行PHP 7.2``NGINX stable
和MariaDB 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
进入我们刚刚创建的目录 -
下载WordPress
wget 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,您应该会看到类似这样的内容。
[](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 安装页面。
[](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上启动并运行
[](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吗?你会试一试吗?
更多推荐
所有评论(0)