使用 prisma 在 Navicat 上插入 Postgres 数据库

Posted

技术标签:

【中文标题】使用 prisma 在 Navicat 上插入 Postgres 数据库【英文标题】:Plug Postgres database on Navicat using prisma 【发布时间】:2018-12-15 10:47:02 【问题描述】:

我目前正在使用 Prisma 和 Postgres 数据库做一个应用程序,但我无法将我的数据库连接到 Navicat。我是 docker 的初学者,并不完全了解服务是如何工作的。我现在的docker-compose.yml

version: '3'
services:
  prisma:
    image: prismagraphql/prisma:1.8
    restart: always
    ports:
    - "4466:4466"
    environment:
      PRISMA_CONFIG: |
        port: 4466
        # uncomment the next line and provide the env var PRISMA_MANAGEMENT_API_SECRET=my-secret to activate cluster security
        # managementApiSecret: my-secret
        databases:
          default:
            connector: postgres
            host: postgres
            port: 5432
            user: prisma
            password: prisma
            migrations: true
  postgres:
    image: postgres
    restart: always
    environment:
      POSTGRES_USER: prisma
      POSTGRES_PASSWORD: prisma
    volumes:
      - postgres:/var/lib/postgresql/data
volumes:
  postgres:

我在 Navicat 上尝试的是 this,在我看来是正确的,但似乎不是。

感谢您的帮助!

【问题讨论】:

【参考方案1】:

您需要为您的postgres 容器使用ports 属性来使用port mapping:

version: '3'
services:
  prisma:
    image: prismagraphql/prisma:1.8
    restart: always
    ports:
    - "4466:4466"
    environment:
      PRISMA_CONFIG: |
        port: 4466
        # uncomment the next line and provide the env var PRISMA_MANAGEMENT_API_SECRET=my-secret to activate cluster security
        # managementApiSecret: my-secret
        databases:
          default:
            connector: postgres
            host: postgres
            port: 5432
            user: prisma
            password: prisma
            migrations: true
  postgres:
    image: postgres
    restart: always
    ports:
    - "5432:5432"
    environment:
      POSTGRES_USER: prisma
      POSTGRES_PASSWORD: prisma
    volumes:
      - postgres:/var/lib/postgresql/data
volumes:
  postgres:

然后你应该能够使用 Postgres 客户端(例如 Navicat)连接到 localhost:5432

【讨论】:

以上是关于使用 prisma 在 Navicat 上插入 Postgres 数据库的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Prisma 为 Postgres 进行 SQL 插入,条件是行数?

Prisma 插入关系一对多

docker swarm deploy 上的 Prisma 配置错误

Prisma 中是不是支持单表继承?

模式拼接两个远程 Prisma/GraphQL 模式

坚持使用 prisma1 模式设计和数据迁移