one-click-apps/public/v2/apps/hasura.json

89 lines
3.4 KiB
JSON

{
"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,}/"
}
]
}