无法使用Prisma、Docker和NestJS访问数据库服务器

voase2hg  于 2022-11-03  发布在  Docker
关注(0)|答案(2)|浏览(113)

我在NestJS上跟踪了一个tutorial,它使用Docker来部署数据库(本地)。
作为ORM,它使用Prisma。
我的Docker容器启动,“准备接受连接”,但当我执行npx prisma migrate dev时,它返回-〉
错误:P1001:无法访问位于localhost的数据库服务器:5434请确保您的数据库服务器运行在localhost5434 .
下面是位于.env文件中的DATABASE_URL(我在Internet上进行了一些搜索后添加了connect_timeout,但它没有解决问题):

DATABASE_URL="postgresql://postgres:123@localhost:5434/nest?schema=public?connect_timeout=300"

下面是我的docker-compose.yml:docker-compose.yml

atmip9wb

atmip9wb1#

postgres的默认端口是5432,而不是5431。尝试在docker-compose.yml中更改它

zrfyljdw

zrfyljdw2#

我正在遵循相同的教程。我也有这个错误。我通过简单地删除Prisma文件夹内的Migrations文件夹,然后再次运行npx prisma migrate dev来修复它。
1.删除prisma文件夹中的migrations文件夹
1.运行npx prisma migrate dev
我注意到的是,错误是由以下命令引起的
您的package.json中的db:dev:rm": "docker compose rm dev-db -s -f -v
我不知道为什么,但你可能需要避免使用它。
我希望这是有帮助的。

相关问题