【问题标题】:DDEV - Configure multiple environmentsDDEV - 配置多个环境
【发布时间】:2021-11-16 10:56:36
【问题描述】:

有没有办法让同一个项目有多个 DDEV 配置?例如,当我们有多个服务器时,我们需要覆盖这种情况:

  • 使用 Apache + PHP 7.3 + Composer 1 进行生产;
  • 使用 Apache + PHP 7.3 的登台服务器,但不同。一组域;
  • 使用 Nginx + PHP 进行开发。 7.4 + Elasticsearch + Redis + Composer 2,我们正在进行系统升级。

开发团队至少需要模拟开发和“陈述”环境。一些用于生产的功能/修补程序正在开发中,应该在大升级之前发布。这是(例如)具有大量自定义的 Magento 2 项目的典型情况。

有没有办法拥有多个不同的环境,如.ddev-prod.ddev-dev 等,并以某种方式将环境名称传递给 ddev 或对其进行配置?

我想到的是,我们可以创建多个配置并向 Readme.md 添加一些信息,例如:

“要启动开发环境:将.ddev-dev 复制到.ddev 并运行ddev start”。

根据您的经验,维护多个环境的最佳方法是什么?

问候, 最大

【问题讨论】:

    标签: ddev


    【解决方案1】:

    我首先要尝试的是三个不同的 DDEV 项目,它们具有不同的配置(但代码和数据库相同)。这样你就可以很容易地看到任何差异。这肯定会解决模仿开发服务器的问题。

    但实际上听起来您需要 3 个代码分支。每个分支都可以有不同的 DDEV 配置,然后就可以了。为每个项目使用不同的项目名称。

    另一种方法是使用 config.prod.yamlconfig.staging.yamlconfig.dev.yaml,并在需要时将所需的内容复制到 .ddev 目录中。但我认为你会更喜欢你的代码的 3 个分支和 3 个不同的项目名称。

    【讨论】:

    • But I think you'll be much happier with 3 branches... 通过master 或单独的infra 分支管理基础设施对我来说看起来更好。在不同的分支中拥有不同的 DDEV 配置意味着: - 如果从 dev 创建新功能分支:无法将 dev 合并到 stagingstaging 合并到 prod; - 如果功能来自master:重新组装dev 时更改将丢失。 | three different DDEV projects. - 不确定DDEV projects 在这种情况下是什么意思。你的意思是不同的.ddev 文件夹吗?还是拥有多个基础架构存储库?
    • ddev 项目是一个包含 .ddev 文件夹和唯一名称的代码目录。
    猜你喜欢
    • 2013-02-22
    • 2017-09-25
    • 2023-03-28
    • 2018-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多