diff --git a/template/docker-compose.yml b/template/docker-compose.yml new file mode 100644 index 0000000..60505c9 --- /dev/null +++ b/template/docker-compose.yml @@ -0,0 +1,54 @@ +#Wait a while for all components are up and running +version: "3" +services: + graph-node: + image: graphprotocol/graph-node + ports: + - "8000:8000" + - "8001:8001" + - "8020:8020" + - "8030:8030" + - "8040:8040" + depends_on: + - ipfs + - postgres + extra_hosts: + - host.docker.internal:host-gateway + - host.docker.internal:host-gateway + environment: + postgres_host: postgres + postgres_user: graph-node + postgres_pass: let-me-in + postgres_db: graph-node + ipfs: "ipfs:5001" +# ethereum: "mainnet:http://host.docker.internal:8545" #Make sure you have it in your .env file + GRAPH_LOG: info + env_file: + - .env + ipfs: + image: ipfs/kubo:v0.17.0 + ports: + - "5001:5001" + volumes: + - ./data/ipfs:/data/ipfs + postgres: + image: postgres:14 + ports: + - "5432:5432" + command: + [ + "postgres", + "-cshared_preload_libraries=pg_stat_statements", + "-cmax_connections=200", + ] + environment: + POSTGRES_USER: graph-node + POSTGRES_PASSWORD: let-me-in + POSTGRES_DB: graph-node + # FIXME: remove this env. var. which we shouldn't need. Introduced by + # , maybe as a + # workaround for https://github.com/docker/for-mac/issues/6270? + PGDATA: "/var/lib/postgresql/data" + POSTGRES_INITDB_ARGS: "-E UTF8 --locale=C" + volumes: + - ./data/postgres:/var/lib/postgresql/data diff --git a/template/package.json b/template/package.json index 6281d7c..06b50e0 100644 --- a/template/package.json +++ b/template/package.json @@ -10,6 +10,9 @@ "auth": "graph auth --product hosted-service SUBGRAPH_KEY", "codegen": "graph codegen subgraph.yaml", "build": "graph build subgraph.yaml", + "create-local": "graph create --node http://localhost:8020/ v3", + "remove-local": "graph remove --node http://localhost:8020/ v3", + "deploy-local": "graph deploy --node http://localhost:8020/ --ipfs http://localhost:5001 v3", "format": "biome format . --write", "lint": "biome check . --organize-imports-enabled=false", "lint:fix": "yarn run lint --apply"