prisma 要求mongo服务必须是集群, 需要有副本集执行事务。
本地开发环境安装了一个debian12虚拟机:
在debian12系统中,
安装docker, docker-compose
下载mongo镜像: docker pull mongo
创建配置文件docker-compose.yml:
version: '3'
services:
mongo:
container_name: mongo
image: mongo:lastest
command: --replSet rs0
ports:
- '27017:27017'
- '28017:28017'
volumes:
- ./data/db:/data/db
启动容器mongo:
docker-compose up -d
开启集群模式:
docker-compose exec mongo mongosh --eval "rs.initiate({_id: 'rs0', members: [{_id: 0, host: '192.168.215.133:27017'}]});"
至此完成, 本人测试有效
附上.env文件里的配置
DATABASE_URL="mongodb://user:password@database.my:27018,database.my:27017/dbname?replicaSet=rs0"