summaryrefslogtreecommitdiffhomepage
path: root/public/v2/apps/hasura.json
blob: 10822e9b8d1ecbc8ad04474ae1e52e8bb5414f00 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
{
    "captainVersion": "2",
    "documentation": "Hasura GraphQL Engine",
    "displayName": "",
    "description": "Instant realtime GraphQL APIs on any Postgres application, existing or new",
    "dockerCompose": {
        "version": "3.6",
        "services": {
            "$$cap_appname-db": {
                "image": "postgres:$$cap_postgres_version",
                "notExposeAsWebApp": "true",
                "volumes": [
                    "$$cap_appname-db-data:/var/lib/postgresql/data"
                ],
                "restart": "always",
                 "environment": {
                    "POSTGRES_USER": "$$cap_pg_user",
                    "POSTGRES_PASSWORD": "$$cap_pg_pass",
                    "POSTGRES_DB": "$$cap_pg_db",
                    "POSTGRES_INITDB_ARGS": "$$cap_pg_initdb_args"
                }
            },
            "$$cap_appname": {
                "image": "hasura/graphql-engine:$$cap_hasura_version",
                "containerHttpPort":"8080",
                "depends_on": [
                "$$cap_appname-db"
                ],
                "restart": "always",
                "environment": {
                    "HASURA_GRAPHQL_DATABASE_URL": "postgres://$$cap_pg_user:$$cap_pg_pass@srv-captain--$$cap_appname-db:5432/$$cap_pg_db",
                    "HASURA_GRAPHQL_ENABLE_CONSOLE": "true",
                    "HASURA_GRAPHQL_ADMIN_SECRET":"$$cap_admin_secret",
                    "HASURA_GRAPHQL_ENABLED_LOG_TYPES": "startup, http-log, webhook-log, websocket-log, query-log"
                }
            }
        }
    },
    "instructions":{
        "end":"Hasura is deployed and available as $$cap_appname. \n\n IMPORTANT: It will take up to 2 minutes for Hasura to be ready. Before that, you might see 502 error page.\n",
        "start":"Instant Realtime GraphQL on Postgres with web admin cosole. This Docker Compose setup runs Hasura GraphQL Engine along with a Postgres database with the PostGIS extension."
     },
     "variables":[
        {
           "defaultValue":"v1.2.2",
           "description":"Check out their GitHub page for their latest version https://github.com/hasura/graphql-engine",
           "id":"$$cap_hasura_version",
           "label":"Hasura Version",
           "validRegex":"/^([^\\s^\\/])+$/"
        },
        {
          "defaultValue":"12",
          "id":"$$cap_postgres_version",
          "label":"Postgres Version",
          "validRegex":"/^([^\\s^\\/])+$/"
       },
        {
           "description":"The admin secret gives you access to the console.",
           "id":"$$cap_admin_secret",
           "label":"Hasura admin secret(password)",
           "validRegex":"/^(?=.*\\d).{10,}$/"
        },
          {
            "id": "$$cap_pg_user",
            "label": "Postgres Username",
            "description": "",
            "validRegex": "/.{1,}/"
        },
        {
            "id": "$$cap_pg_pass",
            "label": "Postgres Password",
            "description": "",
            "validRegex": "/.{1,}/"
        },
        {
            "id": "$$cap_pg_db",
            "label": "Postgres Default Database",
            "description": "",
            "validRegex": "/.{1,}/"
        },
        {
            "id": "$$cap_pg_initdb_args",
            "label": "OPTIONAL: Arguments for 'postgres initdb'",
            "description": "For example, --data-checksums",
            "validRegex": "/.{0,}/"
        }
     ]

}