如何在使用wp-env创建开发环境的同时使用phpmyadmin?

问题描述 投票:0回答:1

我正在使用 wp-env 为我的 WordPress 插件创建开发环境。 有人知道如何将 phpmyadmin 添加到工作容器来访问数据库表吗?

我已经搜索了任何教程,但没有运气。另外,使用自定义 docker 映像可能会解决问题,但我在测试时遇到了另一个问题

wordpress docker phpmyadmin phpunit
1个回答
0
投票

对你来说可能有点晚了,但我需要这样做来支持一个旧的 WordPress 项目。由于我看到你的问题,也找不到任何快速答案,所以我写了一个小脚本并发布了一个要点来分享:

https://gist.github.com/firxworx/cd114d55c9b5135f19bab51ba212c92b

假设 wp-env 正在运行,该脚本将实现以下配方来回答您的问题:

  • 使用
    docker ps
    --filter
    标志加上
    grep
    查找 wp-env 创建的 wordpress 数据库的容器名称。过滤器值基于 wp-env 使用“mariadb”映像并在生成的容器名称中包含“mysql”这一事实。
    grep
    用于从结果中排除“tests-mysql”容器,因此仅保留“mysql”容器。
  • 使用
    docker inspect <container_name>
    命令过滤json结果,在
    jq
    的结果中找到数据库容器的网络名称:
    jq -r '.[0].NetworkSettings.Networks | keys[]'
  • 使用
    docker run
    命令拉取并运行
    phpmyadmin/phpmyadmin:latest
    docker 映像作为容器,环境变量设置为通过端口
    3306
    上的 wp-env 容器使用的 docker 网络与默认 wp 连接到数据库容器-env
    root
    /
    password
  • 的数据库凭据

该脚本将在 http://localhost:8080 运行 phpmyadmin。

如果需要的话,可以很容易地连接到“tests-mysql”容器。

如果您的系统上没有安装

jq
,那么它是开发人员在脚本中使用 json 所必需的。它可在每个流行的 Linux 发行版上使用(例如 Ubuntu:
sudo apt install -y jq
),并且如果您使用 MacOS(例如
brew install jq
),则可以在brew 上使用。

© www.soinside.com 2019 - 2024. All rights reserved.