我们希望在我们团队内的项目中使用相同的(临时)数据库。因此,我们可以使用 DDEV 在本地计算机上进行开发,并且可以共享数据库,因此我们不必导出数据库并将其导入到其他团队成员的计算机上。 DDEV 项目也存储在 GIT 存储库中,因此每个团队成员都可以将 DDEV 容器的最新设置拉到本地计算机上。
如果修改AdditionalConfiguration.php,我可以访问外部数据库,但如果DDEV 容器重新启动,则会覆盖AdditionalConfiguration.php 文件。我还没有找到在 ddev 容器配置中设置数据库连接的方法,因此当容器启动时,它会在AdditionalConfiguration.php 中设置正确的数据库连接(外部数据库)。
有谁知道如何在 DDEV 容器中设置自定义数据库连接?
感谢您的帮助。
我的环境和TYPO3版本:
TYPO3 v10.4.20
Windows 10 (WSL)
Docker 桌面 3.5.2
DDEV-本地版本v1.17.7
AMD64架构
db drud/ddev-dbserver-mariadb-10.3:v1.17.7
dba phpmyadmin:5
ddev-ssh-agent drud/ddev-ssh-agent:v1.17.0
docker 20.10.7
docker-compose 1.29.2
操作系统linux
路由器 drud/ddev-router:v1.17.6
web drud/ddev-webserver:v1.17.7
在 ddev 中管理您的设置文件的方法有很多种,您可以告诉 ddev 不要管理您的设置文件。
disable_settings_management: true
。那么您和您独自负责设置文件。#ddev-generated
并将其签入或执行其他操作即可。那么 ddev 就不会碰它了。有关更多详细信息和细微差别,请参阅有关此主题的文档,https://ddev.readthedocs.io/en/stable/users/usage/cms-settings/
我想你也可以在 TYPO3 设置中覆盖设置在包含/执行AdditionalSettings.php之后
假设团队成员 A 使用一些数据库表创建了一个新扩展,并花了一些时间输入测试数据。
然后团队成员 B 运行数据库架构升级 f 以他为例,他可能会毁掉很多工作。
并且有很多类似的情况,lokal 配置和数据库齐头并进。
我们的团队建立了以下流程: 代码从开发运行到产品。 数据从产品运行到开发。
因此,脚本会创建夜间数据库和文件管理备份。然后创建开发人员快照(通过清理敏感数据和缓存数据)
此开发转储放在 SFTP 服务器上。
然后每晚将最新的转储导入到预生产中 每周一次进行质量检查(因此,如果需要创建新页面等记录,我们有一周的时间让质量检查团队接受更改)
并根据我们的 ddev 的需求。我认为在实践中,我们开发人员每一两个月更新一次数据库。因为大多数内容更改与我们开发者无关。
我们提供了一个客户 ddev 脚本,用于下载最后的转储并将其导入。