Postgresql Docker Compose on Crunchy Postgres和Hasura Graphql引擎-数据库URL设置
如果问题不清楚或没有足够的信息,请让我知道,因为根据我的理解,我尽了最大的努力来陈述我的问题 我试图用Hasura GraphQL引擎配置Crunchy Postgres图像,我尝试按照文档建议更改主机名,但它根本无法连接到我的Crunchy Postgres图像 文档链接: 我的Docker撰写文件:Postgresql Docker Compose on Crunchy Postgres和Hasura Graphql引擎-数据库URL设置,postgresql,docker,docker-compose,hasura,Postgresql,Docker,Docker Compose,Hasura,如果问题不清楚或没有足够的信息,请让我知道,因为根据我的理解,我尽了最大的努力来陈述我的问题 我试图用Hasura GraphQL引擎配置Crunchy Postgres图像,我尝试按照文档建议更改主机名,但它根本无法连接到我的Crunchy Postgres图像 文档链接: 我的Docker撰写文件: version: '3.5' services: unipgdb: image: crunchydata/crunchy-postgres:centos7-11.1-2.3.
version: '3.5'
services:
unipgdb:
image: crunchydata/crunchy-postgres:centos7-11.1-2.3.0
restart: always
ports:
- "5432:5432"
env_file:
- ./config/postgres/cpg-env.list
volumes:
- unipgdata_volume:/var/lib/postgresql/data
networks:
- unicausalapi
graphql-engine:
image: hasura/graphql-engine:v1.0.0-alpha37
ports:
- "8080:80"
depends_on:
- "unipgdb"
restart: always
environment:
HASURA_GRAPHQL_DATABASE_URL: postgres://user:password@postgres:5432/unipgdb
HASURA_GRAPHQL_ENABLE_CONSOLE: "true" # set to "false" to disable console
## uncomment next line to set an access key
# HASURA_GRAPHQL_ACCESS_KEY: mysecretaccesskey
networks:
- unicausalapi
# For Hasura engine
caddyhasura:
build:
context: .
dockerfile: caddyhasura-Dockerfile
depends_on:
- graphql-engine
networks:
- unicausalapi
- unicausalpublic
- unicausalnetwork
volumes:
static_volume: # <-- declare the static volume
media_volume: # <-- declare the media volume
unipgdata_volume:
external: true
networks:
unicausalpublic:
external: true
unicausalnetwork:
external: true
unicausalapi:
external: true
有没有想过该怎么做来解决我的问题?提前感谢。因为Crunchy Postgres容器的名称是
unipgdb
,所以容器的主机名将是相同的。您应该使用这个主机名,而不是postgres
因此,您的数据库url将成为
HASURA_GRAPHQL_数据库_URL:postgres://user:password@unipgdb:5432/unipgdb
如果您的用户名或密码包含特殊字符(如$、#、@等),请确保对URL进行编码并在URL中使用它们。参考:
例如,如果密码为secretPassW$或#
,则应将其输入为secretPassW%24或%23
HASURA_GRAPHQL_DATABASE_URL: postgres://user:password@postgres:5432/unipgdb