graphql-engine/install-manifests/docker-compose-pgadmin/README.md

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

37 lines
1.7 KiB
Markdown
Raw Normal View History

# Hasura GraphQL Engine on Docker with pgAdmin
This Docker Compose setup runs [Hasura GraphQL Engine](https://github.com/hasura/graphql-engine) along with Postgres and [pgAdmin4](https://www.pgadmin.org/) using `docker-compose`.
## Pre-requisites
- [Docker](https://docs.docker.com/install/)
- [Docker Compose](https://docs.docker.com/compose/install/)
## Usage
- Clone this repo on a machine where you'd like to deploy graphql engine
- Edit `docker-compose.yaml` and change `PGADMIN_DEFAULT_EMAIL` and `PGADMIN_DEFAULT_PASSWORD` to something secure (default pgAdmin login email/password) default value for above variables are:
- **PGADMIN_DEFAULT_EMAIL:** `pgadmin@example.com`
- **PGADMIN_DEFAULT_PASSWORD:** `admin`
- Read more `Environment Variables` here: https://hub.docker.com/r/dpage/pgadmin4/
- Edit `docker-compose.yaml` and change `HASURA_GRAPHQL_ADMIN_SECRET` to something secure
- `docker compose up -d`
- Navigate to `http://localhost:5050`, login and add a new server with the following parameters:
General - Name: Hasura
Connection - Host: `postgres`
Username: `postgres`
Password: must be the same as the `POSTGRES_PASSWORD` environment variable defined in the `docker-compose.yaml`, the default is `postgrespassword`
## Important endpoints
- GraphQL endpoint will be `http://localhost:8080/v1/graphql`
- Hasura Console will be available on `http://localhost:8080/console`
- pgAdmin will be available on `http://localhost:5050`
## Connecting to External Postgres
If you want to connect to an external/existing postgres database, replace `HASURA_GRAPHQL_DATABASE_URL` in `docker-compose.yaml` with your database url.
**Note: localhost will resolve to the container ip inside a docker container, not the host ip**