hasura graphql-engine 的运行模式默认是基于容器的,而且还是比较推荐的模式,但是很多时候我们可能需要基于二进制的运行模式
以下是方法的参考说明

解决方法

  • 自己源码构建
    hasura graphql-engine 基于haskell 编写,而且新版本依赖不少三方库,构建起来不是很方便
  • 直接使用容器的二进制文件
    hasura graphql-engine 编译的是静态链接(当然还会包含部分依赖的),当前容器已经提供了debian,ubuntu,centos 的镜像
    可以再运行之后直接
  • 基于官方的容器builder
    官方实际上提供了类似的builder (基于容器的)可以方便构建

运行的一些依赖问题

hasura graphql-engine 构建要求还是比较多的,所以推荐的模式是直接基于容器二进制文件

  • 推荐新版本操作系统
    ubuntu 20,debian buster,centos 推荐8以及以上,理论上rocky linux 也是可以的
  • 几个依赖问题
    hasura graphql-engine 依赖了pg,libpcre,libmariadb,libodbc 这些都可以通过手工安装

参考资料

​https://hub.docker.com/r/hasura/graphql-engine/tags​​​​https://hub.docker.com/r/hasura/graphql-engine-server-builder/tags​​​​https://rockylinux.org/​