Hasura控制台错误:[...]无法建立连接,因为目标计算机主动拒绝了该连接

问题描述

我安装了Docker工具箱版本,以便能够在本地运行Hasura。 Docker具有完整的功能(我认为)并且是最新的,并且可以成功提取映像并启动容器。我认为Hasura CLI也已成功安装,因为可以成功执行诸如hasura version--help之类的某些命令。但是,当我尝试在终端中运行hasura console命令时,将返回此错误

time="2020-09-15T09:28:16-05:00" level=fatal msg="version check: Failed to get version from server: Failed making version api call: Get http://localhost:8080/v1/version: dial tcp [::1]:8080: connectex: No connection Could be made because the target machine actively refused it."

我完全禁用了我的防病毒软件和可以找到的所有防火墙,并按照文档说明为hasura制作了PATH环境变量,然后再次运行该命令,但这不能解决问题。

有人知道是什么原因造成的吗?如果问题不清楚,我深感抱歉,对于Docker和Hasura来说我都是新手。请让我知道是否需要任何进一步的信息!谢谢!!

解决方法

我相信原因可能是graphql引擎未运行。试试这个:

  1. 运行hasura init
  2. 在根目录中,创建包含以下内容的docker-compose.yaml文件:
version: '3.6'

services:

  postgres:
    image: postgres:13.0
    restart: always
    volumes:
      - db_data:/var/lib/postgresql/data
    environment:
      POSTGRES_PASSWORD: postgres

  graphql-engine:
    image: hasura/graphql-engine:latest
    ports:
      - "8080:8080"
    depends_on:
      - "postgres"
    restart: always
    environment:
      HASURA_GRAPHQL_DATABASE_URL: postgres://postgres:postgres@postgres:5432/postgres
      HASURA_GRAPHQL_ENABLE_CONSOLE: "false"
      HASURA_GRAPHQL_DEV_MODE: "true"
      HASURA_GRAPHQL_ENABLED_LOG_TYPES: startup,http-log,webhook-log,websocket-log,query-log
      HASURA_GRAPHQL_ADMIN_SECRET: myadminsecretkey
volumes:
  db_data:

另请参阅:https://hasura.io/docs/1.0/graphql/core/getting-started/docker-simple.html#docker-simple

  1. 使用docker-compose up启动docker服务
  2. 在另一个终端中,运行hasura console --admin-secret myadminsecretkey。您应该在终端输出中看到控制台的网络地址。
,

我是hasura的完整入门者,但是我自己遇到了这个问题。

这是真正的解决方案: 在PowerShell中以管理员身份运行命令。 确保config.yaml指向运行您的graphql-engine实例的localhost:PORT。

I.E 遵循Docker设置过程,运行graphql-engine(在docker上) 下一步:hasura init->编辑config.yaml,将其指向引擎运行的位置-> hasura控制台