YouTubeの動画(https://www.youtube.com/watch?v=GHTA143_b-s&t=2090s)
を参考に、docker-composeで、Nest.js-PostgreSQLの勉強をしています。
しかし動画の36:20あたり、コンテナ内で「npx prisma migrate dev」を実行しようとしたら、以下のエラーが出ました。
bash
1root@-------:/app# npx prisma migrate dev 2 3Environment variables loaded from .env 4Prisma schema loaded from prisma/schema.prisma 5Datasource "db": PostgreSQL database "nest", schema "public" at "dev-db:5434" 6 7Error: P1001: Can't reach database server at `dev-db`:`5434` 8 9Please make sure your database server is running at `dev-db`:`5434`.
「docker compose ps」では、STATUSはきちんとrunningになっています。
コンテナには「docker compose exec api bash」で入りました。
これを実行したいです。
とても面倒だとは思いますが、ご協力よろしくお願いします。
環境
WSL2: Ubuntu20.04
Docker v20.10.13
docker compose v2.2.3
コード
Dockerfile
FROM node:17 RUN mkdir -p /app WORKDIR /app RUN npm i -g @nestjs/cli RUN apt-get update && apt-get upgrade -y RUN apt-get install -y \ postgresql-client \ vim CMD ["yarn", "start:dev"]
docker-compose.yml
version: '3' services: api: build: . container_name: nest tty: true ports: - 3000:3000 volumes: - ./app:/app depends_on: - dev-db links: - dev-db restart: always dev-db: image: postgres:14 container_name: pgdb ports: - 5434:5432 environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: 123 POSTGRES_DB: nest POSTGRES_INITDB_ARGS: "--encoding=UTF-8" restart: always
.env ("npx prisma init"を実行すると自動で生成される)
(省略) DATABASE_URL="postgresql://postgres:123@dev-db:5434/nest?schema=public"
やってみたこと
dev-dbコンテナ内にある、/var/lib/postgresql/data/postgresql.conf ファイルを編集。
(略) listen_addresses = '*' port = 5434 (略)
port のコメントアウトを外し、5434に変更。
効果なし。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。