如何从现有的复杂 Magento2 项目在本地开发环境中获取 运行

How to get running on a local dev environment from an existing and complex Magento2 project

在工作中,我们从外部开发机构收回了我们在 Magento 2 上 运行ning 的现有商店。我需要在本地开发中获取项目 运行ning(使用 docker)。

我从官方文档中熟悉了一个 vanilla 项目,并设法 运行ning 通过使用 composer 下载 vanilla 模板,授予对文件和文件夹的适当权限并 运行ning magento setup:install 命令。

我的问题是,从现有(生产 运行ning)项目开始时如何进行?

  1. 我需要再运行 setup:install吗?如果我这样做,为什么?
  2. 我需要从生产中导入什么以确保通过管理员创建的任何内容或配置也在我的本地设置中 运行ning?我应该从生产中导入完整的数据库吗?
  3. 我知道我们的设置不仅仅使用 php 和 mysql,但 env.php 似乎只列出了数据库配置和管理 url。我在哪里可以获得有关我们的设置使用的完整服务配置信息?
  4. 我还缺少什么来开始使用现有的本地开发项目?

作为一个 运行 在本地环境中使用 Magento 2 的人,希望我能对此有所启发。

  1. 如果您有实时站点的直接副本,则不需要再次运行 setup:install。

  2. 确保您拥有整个 Magento 2 站点的副本(从技术上讲,您可以忽略供应商文件夹,您可以 运行 composer install,它将重新下载这些文件,但这取决于你)。还获取整个数据库的副本。 Magento 2 因将相同数据复制到多个表而臭名昭著,因此如果您没有所有内容,可能会出现问题。

  3. "service configurations" 是什么意思 如果您指的是 Magento 2 扩展,则该数据保存在数据库中,而不是 env.php 文件中。 env.php 仅用于服务器端配置,例如数据库信息、缓存和类似的东西。在我的网站上,我使用 Redis 作为站点缓存,因此它也将包含在该文件中,例如。

  4. 当您第一次将站点解压到您的本地环境时,运行 composer update 目录中。这将确保您安装了所有正确的文件。如果您要 运行 本地开发环境,请使用以下命令将模式设置为开发:bin/magento deploy:mode:set developer。这将允许您进行更改并通过刷新页面来查看这些更改,而不是一直刷新缓存。

Eric 正确回答了所有问题。我也不确定你在这里提到的"service configurations"。如果这是关于第三方 extensions/services 你可以检查 config.php 文件。