【问题标题】:How to get running on a local dev environment from an existing and complex Magento2 project如何从现有且复杂的 Magento2 项目在本地开发环境中运行
【发布时间】:2026-01-09 02:15:01
【问题描述】:
在工作中,我们从外部开发机构收回了在 Magento 2 上运行的现有商店。我需要让项目在本地开发中运行(使用 docker)。
我熟悉了官方文档中的一个 vanilla 项目,并通过使用 composer 下载 vanilla 模板、授予文件和文件夹的适当权限并运行 magento setup:install 命令来使其运行。
我的问题是从现有(生产运行)项目开始时如何进行?
- 我需要再次运行
setup:install 吗?如果我这样做,为什么?
- 我需要从生产中导入什么来确保通过管理员创建的任何内容或配置也在我的本地设置上运行?我应该从生产中导入完整的数据库吗?
- 我知道我们的设置不仅仅使用了 php 和 mysql,但
env.php 似乎只列出了数据库配置和管理 URL。我在哪里可以获得有关我们的设置使用的完整服务配置信息?
- 在开始本地开发的现有项目时我还缺少什么?
【问题讨论】:
标签:
php
magento2
development-environment
【解决方案1】:
作为自己在本地环境中运行 Magento 2 的人,希望我能对此有所了解。
如果您有实时站点的直接副本,则无需再次运行 setup:install。
确保您拥有整个 Magento 2 站点的副本(从技术上讲,您可以忽略供应商文件夹,因为您可以运行 composer install,它会重新下载这些文件,但这取决于您)。同时获取整个数据库的副本。 Magento 2 因将相同的数据复制到多个表而臭名昭著,因此如果您没有所有内容,可能会出现问题。
“服务配置”是什么意思 如果您指的是 Magento 2 扩展,则该数据保存在数据库中,而不是 env.php 文件中。 env.php 仅用于服务器端配置,例如数据库信息、缓存和类似的东西。在我的站点缓存中,我使用 Redis,因此它也将包含在该文件中,例如。
首次将站点解压到本地环境时,在目录中运行 composer update。这将确保您安装了所有正确的文件。如果要运行本地开发环境,请使用以下命令将模式设置为开发:bin/magento deploy:mode:set developer。这将允许您通过刷新页面而不是一直刷新缓存来进行更改并查看这些更改。
【解决方案2】:
Eric 正确回答了所有问题。我也不确定您在这里提到的“服务配置”。如果这是关于第三方扩展/服务,您可以检查 config.php 文件。