Docs: update cloud db guides

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5901
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
GitOrigin-RevId: a9c5cb43437d31c08b2ced0ea156f56a4224ba5d
This commit is contained in:
Rob Dominguez 2022-09-16 08:49:35 -05:00 committed by hasura-bot
parent 35873b1897
commit d67e717524
48 changed files with 675 additions and 78 deletions

View File

@ -8,7 +8,7 @@ keywords:
- guide
- aiven
sidebar_label: Aiven Postgres
sidebar_position: 1
sidebar_position: 2
---
import Thumbnail from '@site/src/components/Thumbnail';
@ -22,12 +22,12 @@ import HeadingIcon from '@site/src/components/HeadingIcon';
This guide explains how to connect a new or existing Aiven Postgres database to a Hasura Cloud project.
## Step 0: Sign up or log in to Hasura Cloud
## Step 1: Sign up or log in to Hasura Cloud
Navigate to [Hasura Cloud](https://cloud.hasura.io/signup/?pg=docs&plcmt=body&cta=navigate-to-hasura-cloud&tech=default)
and sign up or log in.
## Step 1: Create a Hasura Cloud project {#create-hasura-project-aiven}
## Step 2: Create a Hasura Cloud project {#create-hasura-project-aiven}
On the Hasura Cloud dashboard, create a new project:
@ -41,7 +41,7 @@ You will get prompted for a Postgres Database URL. We will create this in the ne
<Thumbnail src='/img/cloud-dbs/existing-db-setup.png' alt='Hasura Cloud database setup' width='700px' />
## Step 2: Create a Postgres DB on Aiven (skip if you have an existing DB) {#create-pg-db-aiven}
## Step 3: Create a Postgres DB on Aiven (skip if you have an existing DB) {#create-pg-db-aiven}
Log into the [Aiven console](https://console.aiven.io/login).
@ -68,7 +68,7 @@ If you're using a database user other than the default one, make sure to give it
:::
## Step 3: Allow connections to your DB from Hasura Cloud
## Step 4: Allow connections to your DB from Hasura Cloud
On the `Services` dashboard, click on your DB:
@ -92,7 +92,7 @@ Add the Hasura IP address that you copied, click on the `+`:
Then click on `Save changes`.
## Step 4: Get the database connection URL {#get-db-url-aiven}
## Step 5: Get the database connection URL {#get-db-url-aiven}
The structure of the database connection URL looks as follows:
@ -104,9 +104,9 @@ To get it, navigate to the `Overview` tab of your database dashboard and copy th
<Thumbnail src='/img/cloud-dbs/aiven/copy-service-uri.png' alt='Copy the service URI on Aiven' width='1000px' />
## Step 5: Finish connecting the database
## Step 6: Finish connecting the database
Back on Hasura Console, enter the database URL that we retrieved in [step 4](#get-db-url-aiven):
Back on Hasura Console, enter the database URL that we retrieved in [step 5](#get-db-url-aiven):
<Thumbnail src='/img/cloud-dbs/aiven/Aiven-complete.png' alt='Database setup' width='600px' />

View File

@ -8,7 +8,7 @@ keywords:
- guide
- aws rds aurora
sidebar_label: AWS RDS Aurora Postgres
sidebar_position: 2
sidebar_position: 3
---
import Thumbnail from '@site/src/components/Thumbnail';
@ -22,12 +22,12 @@ import HeadingIcon from '@site/src/components/HeadingIcon';
This guide explains how to connect a new or existing AWS RDS Aurora Postgres database to a Hasura Cloud project.
## Step 0: Sign up or log in to Hasura Cloud
## Step 1: Sign up or log in to Hasura Cloud
Navigate to [Hasura Cloud](https://cloud.hasura.io/signup/?pg=docs&plcmt=body&cta=navigate-to-hasura-cloud&tech=default)
and sign up or log in.
## Step 1: Create a Hasura Cloud project {#create-hasura-project-aws-rds-aurora}
## Step 2: Create a Hasura Cloud project {#create-hasura-project-aws-rds-aurora}
On the Hasura Cloud dashboard, create a new project:
@ -41,7 +41,7 @@ You will get prompted for a Postgres Database URL. We will create this in the ne
<Thumbnail src='/img/cloud-dbs/existing-db-setup.png' alt='Hasura Cloud database setup' width='700px' />
## Step 2: Create an Aurora DB on AWS RDS (skip if you have an existing DB) {#create-pg-aws-rds-aurora}
## Step 3: Create an Aurora DB on AWS RDS (skip if you have an existing DB) {#create-pg-aws-rds-aurora}
Log into the [AWS console](https://console.aws.amazon.com//).
@ -88,10 +88,10 @@ If you're using a database user other than the default one, make sure to give it
:::
## Step 3: Allow connections to your DB from Hasura Cloud
## Step 4: Allow connections to your DB from Hasura Cloud
On the database dashboard, click on `Connectivity & security`. On the right, click on the security group that you
selected or added in [step 2](#create-pg-aws-rds-aurora).
selected or added in [step 3](#create-pg-aws-rds-aurora).
<Thumbnail
src='/img/cloud-dbs/aws/aurora/find-security-group.png'
@ -125,7 +125,7 @@ Add the Hasura IP address that you copied:
Then click `Save rules`.
## Step 4: Construct the database connection URL {#construct-db-url-aurora}
## Step 5: Construct the database connection URL {#construct-db-url-aurora}
The structure of the database connection URL looks as follows:
@ -149,9 +149,9 @@ On the database dashboard, click on `Connectivity & security`:
- `postgres-port`: On the screenshot above you can find it under `Port`. The default port for Postgres is `5432`.
- `db`: The DB is `postgres` by default unless otherwise specified.
## Step 5: Finish connecting the database
## Step 6: Finish connecting the database
Back on Hasura Console, enter the database URL that we retrieved in [step 4](#construct-db-url-aurora):
Back on Hasura Console, enter the database URL that we retrieved in [step 5](#construct-db-url-aurora):
<Thumbnail src='/img/getting-started/connect-db-cloud.png' alt='Database setup' width='600px' />

View File

@ -8,7 +8,7 @@ keywords:
- guide
- aws rds postgres
sidebar_label: AWS RDS Postgres
sidebar_position: 3
sidebar_position: 4
---
import Thumbnail from '@site/src/components/Thumbnail';
@ -22,12 +22,12 @@ import HeadingIcon from '@site/src/components/HeadingIcon';
This guide explains how to connect a new or existing AWS RDS Postgres database to a Hasura Cloud project.
## Step 0: Sign up or log in to Hasura Cloud
## Step 1: Sign up or log in to Hasura Cloud
Navigate to [Hasura Cloud](https://cloud.hasura.io/signup/?pg=docs&plcmt=body&cta=navigate-to-hasura-cloud&tech=default)
and sign up or log in.
## Step 1: Create a Hasura Cloud project {#create-hasura-project-aws-rds-postgres}
## Step 2: Create a Hasura Cloud project {#create-hasura-project-aws-rds-postgres}
On the Hasura Cloud dashboard, create a new project:
@ -41,7 +41,7 @@ You will get prompted for a Postgres Database URL. We will create this in the ne
<Thumbnail src='/img/cloud-dbs/existing-db-setup.png' alt='Hasura Cloud database setup' width='700px' />
## Step 2: Create a Postgres DB on AWS (skip if you have an existing DB) {#create-aws-rds-postgres-db}
## Step 3: Create a Postgres DB on AWS (skip if you have an existing DB) {#create-aws-rds-postgres-db}
Log into the [AWS console](https://console.aws.amazon.com//).
@ -85,10 +85,10 @@ If you're using a database user other than the default one, make sure to give it
:::
## Step 3: Allow connections to your DB from Hasura Cloud
## Step 4: Allow connections to your DB from Hasura Cloud
On the database dashboard, click on `Connectivity & security`. On the right, click on the security group that you
selected or added in [step 2](/databases/connect-db/cloud-databases/aws-postgres.mdx#create-aws-rds-postgres-db).
selected or added in [step 3](/databases/connect-db/cloud-databases/aws-postgres.mdx#create-aws-rds-postgres-db).
<Thumbnail
src='/img/cloud-dbs/aws/postgres/find-security-group.png'
@ -122,7 +122,7 @@ Add the Hasura IP address that you copied:
Then click `Save rules`.
## Step 4: Construct the database connection URL {#construct-db-url-aws-postgres}
## Step 5: Construct the database connection URL {#construct-db-url-aws-postgres}
The structure of the database connection URL looks as follows:
@ -146,10 +146,10 @@ On the database dashboard, click on `Connectivity & security`:
- `postgres-port`: On the screenshot above you can find it under `Port`. The default port for Postgres is `5432`.
- `db`: The DB is `postgres` by default unless otherwise specified.
## Step 5: Finish connecting the database
## Step 6: Finish connecting the database
Back on Hasura Console, enter the database URL that we retrieved in
[step 4](/databases/connect-db/cloud-databases/aws-postgres.mdx#construct-db-url-aws-postgres):
[step 5](/databases/connect-db/cloud-databases/aws-postgres.mdx#construct-db-url-aws-postgres):
<Thumbnail src='/img/getting-started/connect-db-cloud.png' alt='Database setup' width='600px' />

View File

@ -8,7 +8,7 @@ keywords:
- guide
- azure
sidebar_label: Azure Postgres
sidebar_position: 4
sidebar_position: 5
---
import Thumbnail from '@site/src/components/Thumbnail';
@ -22,12 +22,12 @@ import HeadingIcon from '@site/src/components/HeadingIcon';
This guide explains how to connect a new or existing Azure Postgres database to a Hasura Cloud project.
## Step 0: Sign up or log in to Hasura Cloud
## Step 1: Sign up or log in to Hasura Cloud
Navigate to [Hasura Cloud](https://cloud.hasura.io/signup/?pg=docs&plcmt=body&cta=navigate-to-hasura-cloud&tech=default)
and sign up or log in.
## Step 1: Create a Hasura Cloud project {#create-hasura-project-azure}
## Step 2: Create a Hasura Cloud project {#create-hasura-project-azure}
On the Hasura Cloud dashboard, create a new project:
@ -41,7 +41,7 @@ You will get prompted for a Postgres Database URL. We will create this in the ne
<Thumbnail src='/img/cloud-dbs/existing-db-setup.png' alt='Hasura Cloud database setup' width='700px' />
## Step 2: Create a Postgres DB on Azure (skip if you have an existing DB)
## Step 3: Create a Postgres DB on Azure (skip if you have an existing DB)
Log into the [Azure portal](https://portal.azure.com).
@ -78,7 +78,7 @@ console. Hasura v2.x works fine with JIT enabled.
:::
## Step 3: Allow connections to your DB from Hasura Cloud
## Step 4: Allow connections to your DB from Hasura Cloud
On the database dashboard, click on `Connection security` under `Settings` on the left navigation bar.
@ -94,7 +94,7 @@ Add the Hasura IP address that you copied:
Then click `Save` on the top left.
## Step 4: Construct the database connection URL {#get-db-url-azure}
## Step 5: Construct the database connection URL {#get-db-url-azure}
The structure of the database connection URL looks as follows:
@ -117,9 +117,9 @@ On the database dashboard, click on `Overview`:
- `postgres-port`: The default port for Postgres is `5432`.
- `db`: The DB is `postgres` by default unless otherwise specified.
## Step 5: Finish connecting the database
## Step 6: Finish connecting the database
Back on Hasura Console, enter the database URL that we retrieved in [step 4](#get-db-url-azure):
Back on Hasura Console, enter the database URL that we retrieved in [step 5](#get-db-url-azure):
<Thumbnail src='/img/cloud-dbs/azure/azure-complete.png' alt='Database setup' width='600px' />

View File

@ -0,0 +1,137 @@
---
description: Using Hasura with a Crunchy Postgres database
title: 'Cloud: Using Hasura Cloud with a Crunchy Postgres database'
keywords:
- hasura
- docs
- existing database
- guide
- crunchy
sidebar_label: Crunchy Postgres
sidebar_position: 6
---
import Thumbnail from '@site/src/components/Thumbnail';
import HeadingIcon from '@site/src/components/HeadingIcon';
# Using Hasura Cloud with a Crunchy Postgres database
<div className='badge badge--primary heading-badge'>Available on: Cloud</div>
## Introduction
This guide explains how to connect a new or existing Crunchy Postgres database to a Hasura Cloud project.
## Step 1: Sign up or log in to Hasura Cloud
Navigate to [Hasura Cloud](https://cloud.hasura.io/signup/?pg=docs&plcmt=body&cta=navigate-to-hasura-cloud&tech=default)
and sign up or log in.
## Step 2: Create a Hasura Cloud project {#create-hasura-project}
On the Hasura Cloud dashboard, create a new project:
<Thumbnail src='/img/cloud-dbs/create-hasura-cloud-project.png' alt='Create Hasura Cloud project' />
After the project is initialized successfully, click on `Launch Console` to open the Hasura Console in your browser.
On the Hasura Console, navigate to `Data -> Manage -> Connect Database -> Connect existing database`:
You will get prompted for a Postgres Database URL. We will create this in the next step and then come back here.
<Thumbnail src='/img/cloud-dbs/existing-db-setup.png' alt='Hasura Cloud database setup' width='700px' />
## Step 3: Create a Postgres DB on Crunchy ([skip if you have an existing DB](#get-db-url))
Log into [Crunchy](https://crunchybridge.com/dashboard).
From your dashboard, click `Create Cluster`:
<Thumbnail src='/img/cloud-dbs/crunchy/crunchy-dashboard.png' alt='Crunchy dashboard' width='700px' />
Fill in the necessary information and click `Create Cluster`:
<Thumbnail
src='/img/cloud-dbs/crunchy/crunchy-create-cluster.png'
alt='Create a new cluster with Crunchy'
width='700px'
/>
:::info Note
After creating the cluster, you'll be redirected to its dashboard. Keep an eye on the `Status` row of the Cluster
Overview card. While you can access your connection string immediately, the cluster must first be provisioned in order
for Hasura to be able to connect.
:::
Congratulations! You've now created a Postgres instance on Crunchy which you can use with Hasura GraphQL Engine. Follow
the steps below to connect it to Hasura.
## Step 4: Get the database connection URL {#get-db-url}
The structure of the database connection URL looks as follows:
```bash
postgres://<user-name>:<password>@<host-server>:<port>/<database-name>
```
Click on the Hasura card to see your connection string:
<Thumbnail
src='/img/cloud-dbs/crunchy/crunchy-cluster-dashboard.png'
alt='Create a new cluster with Crunchy'
width='700px'
/>
At the bottom of the instructions, we'll select `Superuser` (which will be `postgres`) for our role:
<Thumbnail
src='/img/cloud-dbs/crunchy/crunchy-connection-string-user.png'
alt='Create a new cluster with Crunchy'
width='700px'
/>
Copy the connection string:
<Thumbnail
src='/img/cloud-dbs/crunchy/crunchy-connection-string-full.png'
alt='Create a new cluster with Crunchy'
width='700px'
/>
## Step 5: Finish connecting the database
Back on the Hasura Console, enter the database URL that we retrieved in the previous step:
<Thumbnail
src='/img/cloud-dbs/render/render-connect-db.png'
alt='Connect the database on Hasura Console'
width='700px'
/>
Then click `Connect Database`.
:::info Note
For security reasons, it is recommended to set database URLs as
[env vars](/projects/env-vars.mdx#manage-project-env-vars) and using the env vars to connect to the databases in place
of the raw database URLs.
:::
Voilà. You are ready to start developing.
<Thumbnail src='/img/cloud-dbs/hasura-console.png' alt='Hasura Console' />
## Next steps
You can check out our [30-Minute Hasura Basics Course](https://hasura.io/learn/graphql/hasura/introduction/) and other
[GraphQL & Hasura Courses](https://hasura.io/learn/) for a more detailed introduction to Hasura.
You can also click the gear icon to manage your Hasura Cloud project. (e.g. add
[collaborators](/projects/collaborators.mdx#manage-project-collaborators),
[env vars](/projects/env-vars.mdx#manage-project-env-vars) or
[custom domains](/projects/domains.mdx#manage-project-domains)).
<Thumbnail src='/img/getting-started/project-manage.png' alt='Project actions' width='860px' />

View File

@ -8,7 +8,7 @@ keywords:
- guide
- digital ocean
sidebar_label: Digital Ocean Postgres
sidebar_position: 5
sidebar_position: 7
---
import Thumbnail from '@site/src/components/Thumbnail';
@ -22,12 +22,12 @@ import HeadingIcon from '@site/src/components/HeadingIcon';
This guide explains how to connect a new or existing Digital Ocean Postgres database to a Hasura Cloud project.
## Step 0: Sign up or log in to Hasura Cloud
## Step 1: Sign up or log in to Hasura Cloud
Navigate to [Hasura Cloud](https://cloud.hasura.io/signup/?pg=docs&plcmt=body&cta=navigate-to-hasura-cloud&tech=default)
and sign up or log in.
## Step 1: Create a Hasura Cloud project {#create-hasura-project-do}
## Step 2: Create a Hasura Cloud project {#create-hasura-project-do}
On the Hasura Cloud dashboard, create a new project:
@ -41,7 +41,7 @@ You will get prompted for a Postgres Database URL. We will create this in the ne
<Thumbnail src='/img/cloud-dbs/existing-db-setup.png' alt='Hasura Cloud database setup' width='700px' />
## Step 2: Create a Postgres DB on Digital Ocean (skip if you have an existing DB)
## Step 3: Create a Postgres DB on Digital Ocean (skip if you have an existing DB)
Log into [Digital Ocean](https://cloud.digitalocean.com/).
@ -58,7 +58,7 @@ associated with.
Then click `Create a Database Cluster`.
## Step 3: Allow connections to your DB from Hasura Cloud
## Step 4: Allow connections to your DB from Hasura Cloud
Navigate to the database cluster's `Overview` page:
@ -85,7 +85,7 @@ If you're using a database user other than the default one, make sure to give it
:::
## Step 4: Get the database connection URL {#get-db-url-do}
## Step 5: Get the database connection URL {#get-db-url-do}
The structure of the database connection URL looks as follows:
@ -107,9 +107,9 @@ Scroll down to `Connection details`. Select `Public network` on the left and `Co
Then click the `Copy` button for the next step.
## Step 5: Finish connecting the database
## Step 6: Finish connecting the database
Back on Hasura Console, enter the database URL that we retrieved in [step 4](#get-db-url-do):
Back on Hasura Console, enter the database URL that we retrieved in [step 5](#get-db-url-do):
<Thumbnail src='/img/cloud-dbs/do/DO-complete.png' alt='Database setup' width='600px' />

View File

@ -0,0 +1,139 @@
---
description: Using Hasura with an ElephantSQL database
title: 'Cloud: Using Hasura Cloud with an ElephantSQL database'
keywords:
- hasura
- docs
- existing database
- guide
- elephant
- elephantsql
sidebar_label: ElephantSQL Postgres
sidebar_position: 8
---
import Thumbnail from '@site/src/components/Thumbnail';
import HeadingIcon from '@site/src/components/HeadingIcon';
# Using Hasura Cloud with an ElephantSQL Postgres database
<div className='badge badge--primary heading-badge'>Available on: Cloud</div>
## Introduction
This guide explains how to connect a new or existing ElephantSQL Postgres database to a Hasura Cloud project.
## Step 1: Sign up or log in to Hasura Cloud
Navigate to [Hasura Cloud](https://cloud.hasura.io/signup/?pg=docs&plcmt=body&cta=navigate-to-hasura-cloud&tech=default)
and sign up or log in.
## Step 2: Create a Hasura Cloud project {#create-hasura-project-do}
On the Hasura Cloud dashboard, create a new project:
<Thumbnail src='/img/cloud-dbs/create-hasura-cloud-project.png' alt='Create Hasura Cloud project' />
After the project is initialized successfully, click on `Launch Console` to open the Hasura Console in your browser.
On the Hasura Console, navigate to `Data -> Manage -> Connect Database -> Connect existing database`:
You will get prompted for a Postgres Database URL. We will create this in the next step and then come back here.
<Thumbnail src='/img/cloud-dbs/existing-db-setup.png' alt='Hasura Cloud database setup' width='700px' />
## Step 3: Create a Postgres DB on ElephantSQL ([skip if you have an existing DB](#get-db-url))
Log into [ElephantSQL](https://customer.elephantsql.com/login).
If this is your first time logging into ElephantSQL, you'll need to create a team. Complete the form and click
`Create team`.
<Thumbnail src='/img/cloud-dbs/elephant/elephant-create-team.png' alt='Create Elephant team' width='700px' />
From here, you'll need to create a new instance:
<Thumbnail
src='/img/cloud-dbs/elephant/elephant-create-instance.png'
alt='Create new Elephant instance'
width='700px'
/>
Choose a name, plan, and - if necessary - tags for this instance. Click `Select Region` when complete:
<Thumbnail
src='/img/cloud-dbs/elephant/elephant-instance-details.png'
alt='Add details to Elephant instance'
width='700px'
/>
Choose a region and click `Review`:
<Thumbnail
src='/img/cloud-dbs/elephant/elephant-select-region.png'
alt='Choose region for Elephant instance'
width='700px'
/>
Confirm your selections and click `Create instance`:
<Thumbnail src='/img/cloud-dbs/elephant/elephant-confirm-instance.png' alt='Create Elephant instance' width='700px' />
Congratulations! You've now created an ElephantSQL Postgres instance you can use with Hasura GraphQL Engine. Follow the
steps below to connect it to Hasura.
## Step 4: Get the database connection URL {#get-db-url}
From your dashboard, click on the name of your instance:
<Thumbnail src='/img/cloud-dbs/elephant/elephant-choose-instance.png' alt='Choose Elephant instance' width='700px' />
The structure of the database connection URL looks as follows:
```bash
postgres://<user-name>:<password>@<host-server>
```
From the `Details` view, copy the URL string to your clipboard:
<Thumbnail
src='/img/cloud-dbs/elephant/elephant-connection-string.png'
alt='Get the connection string for the database'
width='700px'
/>
## Step 5: Finish connecting the database
Back on Hasura Console, enter the database URL that we retrieved in the previous step:
<Thumbnail
src='/img/cloud-dbs/elephant/elephant-connect-db.png'
alt='Add the connection string to your Hasura Console'
width='700px'
/>
Then click `Connect Database`.
:::info Note
For security reasons, it is recommended to set database URLs as
[env vars](/projects/env-vars.mdx#manage-project-env-vars) and using the env vars to connect to the databases in place
of the raw database URLs.
:::
Voilà. You are ready to start developing.
<Thumbnail src='/img/cloud-dbs/hasura-console.png' alt='Hasura Console' />
## Next steps
You can check out our [30-Minute Hasura Basics Course](https://hasura.io/learn/graphql/hasura/introduction/) and other
[GraphQL & Hasura Courses](https://hasura.io/learn/) for a more detailed introduction to Hasura.
You can also click the gear icon to manage your Hasura Cloud project. (e.g. add
[collaborators](/projects/collaborators.mdx#manage-project-collaborators),
[env vars](/projects/env-vars.mdx#manage-project-env-vars) or
[custom domains](/projects/domains.mdx#manage-project-domains)).
<Thumbnail src='/img/getting-started/project-manage.png' alt='Project actions' width='860px' />

View File

@ -8,7 +8,7 @@ keywords:
- existing database
- guide
- gcp
sidebar_position: 6
sidebar_position: 9
---
import Thumbnail from '@site/src/components/Thumbnail';
@ -22,12 +22,12 @@ import HeadingIcon from '@site/src/components/HeadingIcon';
This guide explains how to connect a new or existing GCP Postgres database to a Hasura Cloud project.
## Step 0: Sign up or log in to Hasura Cloud
## Step 1: Sign up or log in to Hasura Cloud
Navigate to [Hasura Cloud](https://cloud.hasura.io/signup/?pg=docs&plcmt=body&cta=navigate-to-hasura-cloud&tech=default)
and sign up or log in.
## Step 1: Create a Hasura Cloud project {#create-hasura-project-gcp}
## Step 2: Create a Hasura Cloud project {#create-hasura-project-gcp}
On the Hasura Cloud dashboard, create a new project:
@ -41,7 +41,7 @@ You will get prompted for a Postgres Database URL. We will create this in the ne
<Thumbnail src='/img/cloud-dbs/existing-db-setup.png' alt='Hasura Cloud database setup' width='700px' />
## Step 2: Create a Postgres DB on GCP (skip if you have an existing DB) {#create-pg-db-gcp}
## Step 3: Create a Postgres DB on GCP (skip if you have an existing DB) {#create-pg-db-gcp}
Log into the [GCP console](https://console.cloud.google.com/).
@ -63,7 +63,7 @@ Select an instance ID, as well as a default user password. If required, choose a
Then click `Create`.
## Step 3: Allow connections to your DB from Hasura Cloud
## Step 4: Allow connections to your DB from Hasura Cloud
On the dashboard of your GCP database instance, on the left sidebar, click on `Connections`. Then scroll down to the
checkbox `Public IP`, and click `+ Add network`:
@ -89,7 +89,7 @@ If you're using a database user other than the default one, make sure to give it
:::
## Step 4: Construct the database connection URL {#construct-db-url-gcp}
## Step 5: Construct the database connection URL {#construct-db-url-gcp}
The structure of the database connection URL looks as follows:
@ -109,9 +109,9 @@ postgresql://<user-name>:<password>@<public-ip>:<postgres-port>/
- `postgres-port`: The default port for Postgres is `5432` if not specified otherwise.
- `db`: The DB is `postgres` by default unless otherwise specified.
## Step 5: Finish connecting the database
## Step 6: Finish connecting the database
Back on Hasura Console, enter the database URL that we retrieved in [step 4](#construct-db-url-gcp):
Back on Hasura Console, enter the database URL that we retrieved in [step 5](#construct-db-url-gcp):
<Thumbnail src='/img/cloud-dbs/gcp/GCP-complete.png' alt='Database setup' width='600px' />
@ -128,9 +128,9 @@ Voilà. You are ready to start developing.
<Thumbnail src='/img/cloud-dbs/hasura-console.png' alt='Hasura console' width='1100px' />
## Step 6 (optional): Enable SSL connection
## Step 7 (optional): Enable SSL connection
### Step 6.1 Get GCP SSL Certs
### Step 7.1 Get GCP SSL Certs
Google Cloud (GCP) SQL makes the following SSL/TLS certificates available for download:
@ -146,7 +146,7 @@ for detailed information about the different certs.
Download these certs to your local drive.
### Step 6.2: Add env vars
### Step 7.2: Add env vars
Log in to [Hasura Cloud](https://cloud.hasura.io/), go to your project and add the following env vars:
@ -162,7 +162,7 @@ Here is how your Hasura Cloud env vars setup should look like:
<Thumbnail src='/img/cloud-dbs/gcp/cloud-gcp-env-vars.png' alt='Hasura Cloud Env Vars' width='1000px' />
### Step 6.3: Configure SSL settings
### Step 7.3: Configure SSL settings
Open the console of your Hasura Cloud project, go to the `Data -> Manage -> [db-name] -> Edit` page.

View File

@ -10,6 +10,21 @@ slug: index
---
import HeadingIcon from '@site/src/components/HeadingIcon';
import useBaseUrl from '@docusaurus/useBaseUrl';
import VersionedLink from '@site/src/components/VersionedLink';
import ArrowRight from '@site/static/icons/arrow_right.svg';
import Aiven from '@site/static/img/cloud-dbs/logos/aiven.png';
import Aurora from '@site/static/img/cloud-dbs/logos/aws-aurora.png';
import RDS from '@site/static/img/cloud-dbs/logos/aws.png';
import Azure from '@site/static/img/cloud-dbs/logos/azure.png';
import RollTide from '@site/static/img/cloud-dbs/logos/crunchy.png';
import DO from '@site/static/img/cloud-dbs/logos/DO.png';
import Elephant from '@site/static/img/cloud-dbs/logos/elephant.png';
import GCP from '@site/static/img/cloud-dbs/logos/gcp.png';
import Railway from '@site/static/img/cloud-dbs/logos/railway.png';
import Render from '@site/static/img/cloud-dbs/logos/render.png';
import Timescale from '@site/static/img/cloud-dbs/logos/timescaledb.png';
import Yugabyte from '@site/static/img/cloud-dbs/logos/yugabyte.png';
# Guides for connecting Hasura Cloud with different cloud databases
@ -20,11 +35,65 @@ import HeadingIcon from '@site/src/components/HeadingIcon';
Check out the following guides for tutorials on how to use Hasura Cloud with a new or existing database provided by
specific cloud vendors.
- [Aiven Postgres](/databases/connect-db/cloud-databases/aiven.mdx)
- [AWS RDS Aurora Postgres](/databases/connect-db/cloud-databases/aws-aurora.mdx)
- [AWS RDS Postgres](/databases/connect-db/cloud-databases/aws-postgres.mdx)
- [Azure Postgres](/databases/connect-db/cloud-databases/azure.mdx)
- [Digital Ocean Postgres](/databases/connect-db/cloud-databases/digital-ocean.mdx)
- [GCP Postgres](/databases/connect-db/cloud-databases/gcp.mdx)
- [TimescaleDB Cloud](/databases/connect-db/cloud-databases/timescale-cloud.mdx)
- [YugabyteDB](/databases/connect-db/cloud-databases/yugabyte.mdx)
<div className='vendor-table'>
<VersionedLink to='/databases/connect-db/cloud-databases/aiven'>
<div className='card'>
<img src={Aiven} title='Aiven Postgres' alt='Connect Postgres DB to Hasura' />
</div>
</VersionedLink>
<VersionedLink to='/databases/connect-db/cloud-databases/aws-aurora'>
<div className='card'>
<img src={Aurora} title='AWS Aurora Postgres' alt='Connect AWS Aurora Postgres to Hasura' />
</div>
</VersionedLink>
<VersionedLink to='/databases/connect-db/cloud-databases/aws-postgres'>
<div className='card'>
<img src={RDS} title='AWS RDS Postgres' alt='Connect AWS RDS Postgres to Hasura' />
</div>
</VersionedLink>
<VersionedLink to='/databases/connect-db/cloud-databases/azure'>
<div className='card'>
<img src={Azure} title='Azure Postgres' alt='Connect Azure Postgres to Hasura' />
</div>
</VersionedLink>
<VersionedLink to='/databases/connect-db/cloud-databases/crunchy'>
<div className='card'>
<img src={RollTide} title='Crunchy Postgres' alt='Connect Crunchy Postgres to Hasura' />
</div>
</VersionedLink>
<VersionedLink to='/databases/connect-db/cloud-databases/digital-ocean'>
<div className='card'>
<img src={DO} title='Digital Ocean Postgres' alt='Connect DO Postgres to Hasura' />
</div>
</VersionedLink>
<VersionedLink to='/databases/connect-db/cloud-databases/elephant'>
<div className='card'>
<img src={Elephant} title='ElephantSQL Postgres' alt='Connect ElephantSQL Postgres to Hasura' />
</div>
</VersionedLink>
<VersionedLink to='/databases/connect-db/cloud-databases/gcp'>
<div className='card'>
<img src={GCP} title='GCP Postgres' alt='Connect GCP Postgres to Hasura' />
</div>
</VersionedLink>
<VersionedLink to='/databases/connect-db/cloud-databases/railway'>
<div className='card'>
<img src={Railway} title='Railway Postgres' alt='Connect Railway Postgres to Hasura' />
</div>
</VersionedLink>
<VersionedLink to='/databases/connect-db/cloud-databases/render'>
<div className='card'>
<img src={Render} title='Render Postgres' alt='Connect Render Postgres to Hasura' />
</div>
</VersionedLink>
<VersionedLink to='/databases/connect-db/cloud-databases/timescale-cloud'>
<div className='card'>
<img src={Timescale} title='TimescaleDB Postgres' alt='Connect TimescaleDB Postgres to Hasura' />
</div>
</VersionedLink>
<VersionedLink to='/databases/connect-db/cloud-databases/yugabyte'>
<div className='card'>
<img src={Yugabyte} title='YugabyteDB Postgres' alt='Connect YugabyteDB Postgres to Hasura' />
</div>
</VersionedLink>
</div>

View File

@ -0,0 +1,118 @@
---
description: Using Hasura with a Railway Postgres database
title: 'Cloud: Using Hasura Cloud with a Railway Postgres database'
keywords:
- hasura
- docs
- existing database
- guide
- railway
sidebar_label: Railway Postgres
sidebar_position: 10
---
import Thumbnail from '@site/src/components/Thumbnail';
import HeadingIcon from '@site/src/components/HeadingIcon';
# Using Hasura Cloud with a Railway Postgres database
<div className='badge badge--primary heading-badge'>Available on: Cloud</div>
## Introduction
This guide explains how to connect a new or existing Railway Postgres database to a Hasura Cloud project.
## Step 1: Sign up or log in to Hasura Cloud
Navigate to [Hasura Cloud](https://cloud.hasura.io/signup/?pg=docs&plcmt=body&cta=navigate-to-hasura-cloud&tech=default)
and sign up or log in.
## Step 2: Create a Hasura Cloud project {#create-hasura-project}
On the Hasura Cloud dashboard, create a new project:
<Thumbnail src='/img/cloud-dbs/create-hasura-cloud-project.png' alt='Create Hasura Cloud project' />
After the project is initialized successfully, click on `Launch Console` to open the Hasura Console in your browser.
On the Hasura Console, navigate to `Data -> Manage -> Connect Database -> Connect existing database`:
You will get prompted for a Postgres Database URL. We will create this in the next step and then come back here.
<Thumbnail src='/img/cloud-dbs/existing-db-setup.png' alt='Hasura Cloud database setup' width='700px' />
## Step 3: Create a Postgres DB on Railway ([skip if you have an existing DB](#get-db-url))
Log into [Railway](https://railway.app/dashboard).
From your dashboard, click `New Project`:
<Thumbnail src='/img/cloud-dbs/railway/railway-new-project.png' alt='Create a new project with Railway' width='700px' />
Select `Provision PostgreSQL`:
<Thumbnail src='/img/cloud-dbs/railway/railway-new-pg.png' alt='Create a new PG db with Railway' width='700px' />
Railway will redirect you to the project's dashboard. After a few seconds, you should see the `Activity` card update
with information about your new instance. Congratulations! You've now created a Postgres instance on Railway which you
can use with Hasura GraphQL Engine. Follow the steps below to connect it to Hasura.
## Step 4: Get the database connection URL {#get-db-url}
The structure of the database connection URL looks as follows:
```bash
postgresql://<user-name>:<password>@<host-server>:<port>/<database-name>
```
Click on the `PostgreSQL` card to see details related to this instance.
<Thumbnail
src='/img/cloud-dbs/railway/railway-choose-pg.png'
alt='Access your the details of the db from the card'
width='700px'
/>
Choose the `Connect` tab and copy the `Postgres Connection URL`:
<Thumbnail
src='/img/cloud-dbs/railway/railway-connection-string.png'
alt='Go to the connect tab and grab the connection string'
width='700px'
/>
## Step 5: Finish connecting the database
Back on the Hasura Console, enter the database URL that we retrieved in the previous step:
<Thumbnail
src='/img/cloud-dbs/render/render-connect-db.png'
alt='Connect the database on Hasura Console'
width='700px'
/>
Then click `Connect Database`.
:::info Note
For security reasons, it is recommended to set database URLs as
[env vars](/projects/env-vars.mdx#manage-project-env-vars) and using the env vars to connect to the databases in place
of the raw database URLs.
:::
Voilà. You are ready to start developing.
<Thumbnail src='/img/cloud-dbs/hasura-console.png' alt='Hasura Console' />
## Next steps
You can check out our [30-Minute Hasura Basics Course](https://hasura.io/learn/graphql/hasura/introduction/) and other
[GraphQL & Hasura Courses](https://hasura.io/learn/) for a more detailed introduction to Hasura.
You can also click the gear icon to manage your Hasura Cloud project. (e.g. add
[collaborators](/projects/collaborators.mdx#manage-project-collaborators),
[env vars](/projects/env-vars.mdx#manage-project-env-vars) or
[custom domains](/projects/domains.mdx#manage-project-domains)).
<Thumbnail src='/img/getting-started/project-manage.png' alt='Project actions' width='860px' />

View File

@ -0,0 +1,110 @@
---
description: Using Hasura with Render Postgres database
title: 'Cloud: Using Hasura Cloud with a Render Postgres database'
keywords:
- hasura
- docs
- existing database
- guide
- render
sidebar_label: Render Postgres
sidebar_position: 11
---
import Thumbnail from '@site/src/components/Thumbnail';
import HeadingIcon from '@site/src/components/HeadingIcon';
# Using Hasura Cloud with a Render Postgres database
<div className='badge badge--primary heading-badge'>Available on: Cloud</div>
## Introduction
This guide explains how to connect a new or existing Render Postgres database to a Hasura Cloud project.
## Step 1: Sign up or log in to Hasura Cloud
Navigate to [Hasura Cloud](https://cloud.hasura.io/signup/?pg=docs&plcmt=body&cta=navigate-to-hasura-cloud&tech=default)
and sign up or log in.
## Step 2: Create a Hasura Cloud project {#create-hasura-project}
On the Hasura Cloud dashboard, create a new project:
<Thumbnail src='/img/cloud-dbs/create-hasura-cloud-project.png' alt='Create Hasura Cloud project' />
After the project is initialized successfully, click on `Launch Console` to open the Hasura Console in your browser.
On the Hasura Console, navigate to `Data -> Manage -> Connect Database -> Connect existing database`:
You will get prompted for a Postgres Database URL. We will create this in the next step and then come back here.
<Thumbnail src='/img/cloud-dbs/existing-db-setup.png' alt='Hasura Cloud database setup' width='700px' />
## Step 3: Create a Postgres DB on Render ([skip if you have an existing DB](#get-db-url))
Log into [Render](https://dashboard.render.com/).
From your dashboard, click `New PostrgeSQL`:
<Thumbnail src='/img/cloud-dbs/render/render-new-pg.png' alt='Create a new PG db with Render' width='700px' />
Choose a name for your new database and fill in the required info. When ready, click `Create Database`:
<Thumbnail src='/img/cloud-dbs/render/render-pg-details.png' alt='Fill in the db details' width='700px' />
Render will redirect you to the database's dashboard. After a few minutes, you should see the status update to
`Available`. Congratulations! You've now created a Postgres instance on Render which you can use with Hasura GraphQL
Engine. Follow the steps below to connect it to Hasura.
## Step 4: Get the database connection URL {#get-db-url}
The structure of the database connection URL looks as follows:
```bash
postgres://<user-name>:<password>@<host-server>/<database-name>
```
From your database's dashboard, find the `Connections` card and copy the `External Database URL`:
<Thumbnail
src='/img/cloud-dbs/render/render-connection-string.png'
alt='Grab the PG db connection string'
width='700px'
/>
## Step 5: Finish connecting the database
Back on the Hasura Console, enter the database URL that we retrieved in the previous step:
<Thumbnail
src='/img/cloud-dbs/render/render-connect-db.png'
alt='Connect the database on Hasura Console'
width='700px'
/>
Then click `Connect Database`.
:::info Note
For security reasons, it is recommended to set database URLs as
[env vars](/projects/env-vars.mdx#manage-project-env-vars) and using the env vars to connect to the databases in place
of the raw database URLs.
:::
Voilà. You are ready to start developing.
<Thumbnail src='/img/cloud-dbs/hasura-console.png' alt='Hasura Console' />
## Next steps
You can check out our [30-Minute Hasura Basics Course](https://hasura.io/learn/graphql/hasura/introduction/) and other
[GraphQL & Hasura Courses](https://hasura.io/learn/) for a more detailed introduction to Hasura.
You can also click the gear icon to manage your Hasura Cloud project. (e.g. add
[collaborators](/projects/collaborators.mdx#manage-project-collaborators),
[env vars](/projects/env-vars.mdx#manage-project-env-vars) or
[custom domains](/projects/domains.mdx#manage-project-domains)).
<Thumbnail src='/img/getting-started/project-manage.png' alt='Project actions' width='860px' />

View File

@ -8,7 +8,7 @@ keywords:
- existing database
- guide
- timescale
sidebar_position: 7
sidebar_position: 12
---
import Thumbnail from '@site/src/components/Thumbnail';
@ -22,12 +22,12 @@ import HeadingIcon from '@site/src/components/HeadingIcon';
This guide explains how to connect a new or existing Timescale Postgres database to a Hasura Cloud project.
## Step 0: Sign up or log in to Hasura Cloud
## Step 1: Sign up or log in to Hasura Cloud
Navigate to [Hasura Cloud](https://cloud.hasura.io/signup/?pg=docs&plcmt=body&cta=navigate-to-hasura-cloud&tech=default)
and sign up or log in.
## Step 1: Create a Hasura Cloud project {#create-hasura-project-timescale}
## Step 2: Create a Hasura Cloud project {#create-hasura-project-timescale}
On the Hasura Cloud dashboard, create a new project:
@ -41,7 +41,7 @@ On the Hasura console, navigate to `Data -> Manage -> Connect Database -> Connec
<Thumbnail src='/img/cloud-dbs/existing-db-setup.png' alt='Hasura Cloud database setup' width='700px' />
## Step 2: Create a Postgres DB on Timescale (skip if you have an existing DB) {#create-pg-db-timescale}
## Step 3: Create a Postgres DB on Timescale (skip if you have an existing DB) {#create-pg-db-timescale}
Log into the [Timescale Cloud portal](https://portal.timescale.cloud/login).
@ -72,7 +72,7 @@ If you're using a database user other than the default one, make sure to give it
:::
## Step 3: Allow connections to your DB from Hasura Cloud
## Step 4: Allow connections to your DB from Hasura Cloud
On the `Services` dashboard, click on your DB:
@ -94,7 +94,7 @@ Add the Hasura IP address that you copied, click on the `+` and then click on `S
<Thumbnail src='/img/cloud-dbs/timescale/add-hasura-ip.png' alt='Add the Hasura IP on Timescale' width='500px' />
## Step 4: Get the database connection URL {#get-db-url-timescale}
## Step 5: Get the database connection URL {#get-db-url-timescale}
The structure of the database connection URL looks as follows:
@ -106,9 +106,9 @@ To get it, navigate to the `Overview` tab of your database dashboard and copy th
<Thumbnail src='/img/cloud-dbs/timescale/copy-service-uri.png' alt='Copy the service URI on Timescale' width='1000px' />
## Step 5: Finish connecting the database
## Step 6: Finish connecting the database
Back on Hasura Console, enter the database URL that we retrieved in [step 4](#get-db-url-timescale):
Back on Hasura Console, enter the database URL that we retrieved in [step 5](#get-db-url-timescale):
<Thumbnail src='/img/cloud-dbs/timescale/TS-complete.png' alt='Database setup' width='600px' />

View File

@ -8,7 +8,7 @@ keywords:
- existing database
- guide
- yugabyte
sidebar_position: 8
sidebar_position: 13
---
import Thumbnail from '@site/src/components/Thumbnail';
@ -22,12 +22,12 @@ import HeadingIcon from '@site/src/components/HeadingIcon';
This guide explains how to connect a new or existing Yugabyte Postgres database to a Hasura Cloud project.
## Step 0: Sign up or log in to Hasura Cloud
## Step 1: Sign up or log in to Hasura Cloud
Navigate to [Hasura Cloud](https://cloud.hasura.io/signup/?pg=docs&plcmt=body&cta=navigate-to-hasura-cloud&tech=default)
and sign up or log in.
## Step 1: Create a Hasura Cloud project {#create-hasura-project-yugabyte}
## Step 2: Create a Hasura Cloud project {#create-hasura-project-yugabyte}
On the Hasura Cloud dashboard, create a new project:
@ -41,7 +41,7 @@ On the Hasura console, navigate to `Data -> Manage -> Connect Database -> Connec
<Thumbnail src='/img/cloud-dbs/existing-db-setup.png' alt='Hasura Cloud database setup' width='700px' />
## Step 2: Create a Postgres DB on Yugabyte (skip if you have an existing DB) {#create-pg-db-yugabyte}
## Step 3: Create a Postgres DB on Yugabyte (skip if you have an existing DB) {#create-pg-db-yugabyte}
Log into the [Yugabyte Cloud dashboard](https://cloud.yugabyte.com/login).
@ -72,7 +72,7 @@ Download your credentials and then click `Create Cluster`.
width='1000px'
/>
## Step 3: Allow connections to your DB from Hasura Cloud
## Step 4: Allow connections to your DB from Hasura Cloud
From the cluster's dashboard, click `Add IP Allow List`:
@ -100,7 +100,7 @@ Enter the Hasura IP address that you copied:
Then click `Save`.
## Step 4: Construct the database connection URL {#construct-db-url-yugabyte}
## Step 5: Construct the database connection URL {#construct-db-url-yugabyte}
The structure of the database connection URL looks as follows:
@ -124,10 +124,10 @@ Click the `Optimize for Hasura Cloud` checkbox and then copy your connection str
width='1000px'
/>
## Step 5: Finish connecting the database
## Step 6: Finish connecting the database
Back on the Hasura Console, enter the database URL that we just copied and replace the `<DB USER>` and `<DB PASSWORD>`
with the information from your credentials downloaded in [step 2](#create-pg-db-yugabyte):
with the information from your credentials downloaded in [step 3](#create-pg-db-yugabyte):
<Thumbnail src='/img/cloud-dbs/yugabyte/yb-step-3i.png' alt='Database setup' width='600px' />

View File

@ -915,3 +915,27 @@ div[class*='codeBlockTitle_'] {
tbody {
word-break: break-word;
}
// Gallery for cloud db guides' vendor logos
.vendor-table {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
grid-gap: 20px;
.card {
display: grid;
place-items: center center;
height: 200px;
background: #fff;
img {
width: 150px;
height: auto;
}
&:hover {
box-shadow: var(--ifm-global-shadow-md);
cursor: pointer;
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 119 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 289 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 319 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 286 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 268 KiB

BIN
docs/static/img/cloud-dbs/logos/DO.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
docs/static/img/cloud-dbs/logos/aws.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 194 KiB

BIN
docs/static/img/cloud-dbs/logos/gcp.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 116 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 130 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 251 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 89 KiB