laravel - Laravel Sail 的 jenssegers/mongodb 依赖问题 - ext-mongodb
问题描述
我正在尝试在 Laravel Jetstream + Sail 中设置 MongoDB。
我正在做的是尝试安装以下软件包:
- mongodb/mongodb
- jensegers/mongodb
但我收到以下错误:
Problem 1
- jenssegers/mongodb[v3.8.0, ..., v3.8.2] require mongodb/mongodb ^1.6 -> satisfiable by mongodb/mongodb[1.6.0, ..., 1.9.x-dev (alias of dev-master)].
- mongodb/mongodb 1.9.x-dev is an alias of mongodb/mongodb dev-master and thus requires it to be installed too.
- mongodb/mongodb dev-master requires ext-mongodb ^1.10.0 -> it is missing from your system. Install or enable PHP's mongodb extension.
- mongodb/mongodb[1.6.0, ..., v1.6.x-dev] require php ^5.6 || ^7.0 -> your php version (8.0.2) does not satisfy that requirement.
- mongodb/mongodb[1.7.0-beta1, ..., v1.7.x-dev] require php ^7.0 -> your php version (8.0.2) does not satisfy that requirement.
- mongodb/mongodb[1.8.0-RC1, ..., v1.8.x-dev] require ext-mongodb ^1.8.1 -> it is missing from your system. Install or enable PHP's mongodb extension.
- Root composer.json requires jenssegers/mongodb ^3.8 -> satisfiable by jenssegers/mongodb[v3.8.0, v3.8.1, v3.8.2].
就像这里建议的那样:为什么作曲家抱怨 ext-mongo 扩展?
我在 composer.json 中添加了以下内容
"provide" : {
"ext-mongo": "*"
},
但没有任何改变,我也尝试添加包:
"soyuka/stubs-mongodb": "^1.0",
但同样的问题。
谢谢毛罗
解决方案
解决方案是发布 Sail docker 文件并添加:
php8.0-mongodb
在 /docker/8.0/DockerFile
构建和运行:
sail composer require jenssegers/mongodb
推荐阅读
- go - 当结构初始化并在其他包中调用时,是否可以只返回一个字段?
- neo4j - 在节点属性上迭代 Neo4j 图匹配
- swift - 手表操作系统 | 如何更新我的并发症?
- jsonschema - 我可以在第三个中组合两个 JSON 模式吗?
- scala - 类型类解析中的隐式类别
- google-cloud-platform - 用于计算 VM 自创建以来可用或关闭的总时间的 API
- sql - 如何在数据中的每个“类别”更改之间向我的 SQL 结果中添加一行?
- javascript - Safari浏览器的javascript时间计数器问题
- python - 向 seaborn 的 relplot 创建的多个绘图添加虚线
- node.js - gloud 应用程序部署 - 拒绝:请求中“最新”的权限被拒绝