@wordpress/env 包裹 (wp-env)允许您设置一个本地WordPress环境(站点),用于构建和测试插件和主题,而无需任何其他配置。

在遵循本指南之前,安装 Node.js开发工具 如果您还没有这样做。

wp-env basics diagram

快速开始

  1. 下载,安装并开始 Docker桌面 按照操作系统的说明。
  2. 跑步npm -g install @wordpress/env在安装终端中wp-env全球。
  3. 在终端中,导航到现有插件目录,主题目录或新的工作目录。
  4. 跑步wp-env start在终端中以启动本地WordPress环境。
  5. 脚本运行后,导航到http://localhost:8888/wp-admin并使用用户名登录WordPress仪表板admin和密码password

设置Docker桌面

wp-env工具用途 Docker 创建一个运行本地WordPress网站的虚拟机。Docker Desktop应用程序免费用于小型企业,个人使用,教育和非商业开源项目。看到他们 常问问题 了解更多信息。

使用下面的链接下载并安装操作系统的Docker桌面。

如果您在20.04.1之前使用Ubuntu版本,请参见附加 故障排除笔记 以下。

成功安装后,启动Docker Desktop应用程序,然后按照提示进行设置。通常,您应该使用推荐的(默认)设置,并且创建Docker帐户是可选的。

安装并运行WP-ENV

wp-env工具用于使用Docker创建本地WordPress环境。因此,在设置Docker桌面后,打开终端并安装wp-env通过运行命令:

npm -g install @wordpress/env

这将安装wp-env在全球范围内,允许该工具从任何目录运行。要确认已安装并可用,请运行wp-env --version,并且版本编号应该出现。

接下来,导航到现有插件目录,主题目录或终端中的新工作目录并运行:

wp-env start

脚本完成后,您可以访问当地环境:http://localhost:8888。使用用户名登录WordPress仪表板admin和密码password

一些项目,例如Gutenberg,包括他们自己的特定项目wp-env配置,文档可能会提示您运行npm run start wp-env反而。

有关控制Docker环境的更多信息,请参阅 @wordpress/env软件包 读书我。

在哪里运行wp-env

wp-env工具几乎可以从任何地方运行。在开发单个插件时使用脚本时,wp-env start从包含插件的目录运行时,可以自动安装和激活插件。从您开发主题的目录运行时,这也适用于主题。

如果您运行,将创建通用的WordPress环境wp-env start来自不是插件或主题的目录。该脚本将显示以下警告,但如果这是您的意图,请忽略。

!! Warning: could not find a .wp-env.json configuration file and could not determine if 'DIR' is a WordPress installation, a plugin, or a theme.

您也可以使用.wp-env.json配置文件可以创建一个与多个插件和/或主题一起使用的环境。看到 @wordpress/env软件包 读取文件以获取更多配置详细信息。

卸载或重置WP-ENV

如果您需要重新开始或要删除已安装的内容,这里有一些说明。

  • 如果您只想重置和清洁WordPress数据库,请运行wp-env clean all
  • 要完全删除特定项目的本地环境,请运行wp-env destroy
  • 全球卸载wp-env工具,运行npm -g uninstall @wordpress/env

故障排除

常见错误

使用时wp-env,通常会出现错误:Error while running docker-compose command

  • 检查docker桌面是否启动和运行。
  • 检查Docker桌面仪表板中的日志,重新启动或删除现有的虚拟机。
  • 然后尝试重读wp-env start

如果您看到错误:Host is already in use by another container

  • 您尝试启动的容器已经在运行,或者另一个容器是。您可以通过运行停止现有容器wp-env stop从您启动的目录中。
  • 如果您不记得您从哪里开始的目录wp-env,您可以通过运行来停止所有容器docker stop $(docker ps -q)。这将停止所有Docker容器,因此请谨慎使用。
  • 然后尝试重读wp-env start

Ubuntu Docker设置

如果您在20.04.1之前使用Ubuntu版本wp-env

要解决这个问题,请首先遵循 安装指南 来自Docker。docker-compose也需要,您可能需要单独安装。参考 Docker撰写文档

一旦码头和wp-env已安装,并假设wp-env已在全球配置,尝试运行wp-env start在目录中。如果您遇到此错误:

ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running?

If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.

首先,确保Docker正在运行。您可以通过运行检查ps -ef | grep docker,应该返回类似的东西:

/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

如果Docker不运行,请尝试通过运行来开始服务sudo systemctl start docker.service

如果Docker正在运行,那么它不会听取WordPress环境试图进行交流的方式。尝试添加以下服务覆盖文件以包括在tcp。看 此Docker文档 关于如何为Docker守护程序配置远程访问。

# /etc/systemd/system/docker.service.d/override.conf
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2376

从命令行重新启动服务:

sudo systemctl daemon-reload
sudo systemctl restart docker.service

重新启动服务后,设置环境变量DOCKER_HOST并尝试开始wp-env和:

export DOCKER_HOST=tcp://127.0.0.1:2376
wp-env start

您的环境现在应该在http://localhost:8888

其他资源

By zhuon

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注