feat: metrics port update -> :5002
This commit is contained in:
parent
83bb29f217
commit
fb22f26e18
@ -22,6 +22,6 @@ WORKDIR /service
|
|||||||
COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
|
COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
|
||||||
COPY --from=build /build/* .
|
COPY --from=build /build/* .
|
||||||
|
|
||||||
EXPOSE 5001
|
EXPOSE 5002
|
||||||
|
|
||||||
CMD ["./celo-indexer"]
|
CMD ["./celo-indexer"]
|
61
README.md
Normal file
61
README.md
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
# celo-indexer
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
A lightweight Postgres chain indexer designed to couple with [celo-tracker](https://github.com/grassrootseconomics/celo-tracker) to index all relevant GE related blockchain data on the Celo blockchain.
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
### Prerequisites
|
||||||
|
|
||||||
|
* Git
|
||||||
|
* Docker
|
||||||
|
* Postgres server
|
||||||
|
* Access to a `celo-tracker` instance
|
||||||
|
|
||||||
|
See [docker-compose.yaml](dev/docker-compose.yaml) for an example on how to run and deploy a single instance.
|
||||||
|
|
||||||
|
### 1. Build the Docker image
|
||||||
|
|
||||||
|
We provide pre-built images for `linux/amd64`. See the packages tab on Github.
|
||||||
|
|
||||||
|
If you are on any other platform:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/grassrootseconomics/celo-indexer.git
|
||||||
|
cd celo-indexer
|
||||||
|
docker buildx build --build-arg BUILD=$(git rev-parse --short HEAD) --tag celo-indexer:$(git rev-parse --short HEAD) --tag celo-indexer:latest .
|
||||||
|
docker images
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Run Postgres
|
||||||
|
|
||||||
|
For an example, see `dev/docker-compose.postgres.yaml`.
|
||||||
|
|
||||||
|
### 3. Update config values
|
||||||
|
|
||||||
|
See `.env.example` on how to override default values defined in `config.toml` using env variables. Alternatively, mount your own config.toml either during build time or Docker runtime.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Override only specific config values
|
||||||
|
nano .env.example
|
||||||
|
mv .env.example .env
|
||||||
|
```
|
||||||
|
|
||||||
|
Special env variables:
|
||||||
|
|
||||||
|
* DEV=*
|
||||||
|
|
||||||
|
Refer to [`config.toml`](config.toml) to understand different config value settings.
|
||||||
|
|
||||||
|
|
||||||
|
### 4. Run the indexer
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd dev
|
||||||
|
docker compose up
|
||||||
|
```
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
[AGPL-3.0](LICENSE).
|
@ -2,7 +2,7 @@
|
|||||||
go_process = true
|
go_process = true
|
||||||
|
|
||||||
[api]
|
[api]
|
||||||
address = ":5001"
|
address = ":5002"
|
||||||
|
|
||||||
[postgres]
|
[postgres]
|
||||||
dsn = "postgres://postgres:postgres@127.0.0.1:5432/ge_celo_data"
|
dsn = "postgres://postgres:postgres@127.0.0.1:5432/ge_celo_data"
|
||||||
|
22
dev/docker-compose.postgres.yaml
Normal file
22
dev/docker-compose.postgres.yaml
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
services:
|
||||||
|
postgres:
|
||||||
|
image: postgres:16-alpine
|
||||||
|
restart: unless-stopped
|
||||||
|
user: postgres
|
||||||
|
environment:
|
||||||
|
- POSTGRES_PASSWORD=postgres
|
||||||
|
- POSTGRES_USER=postgres
|
||||||
|
volumes:
|
||||||
|
- ./init_db.sql:/docker-entrypoint-initdb.d/init_db.sql
|
||||||
|
- indexer-pg:/var/lib/postgresql/data
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:5432:5432"
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL", "pg_isready"]
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
indexer-pg:
|
||||||
|
driver: local
|
@ -8,15 +8,26 @@ services:
|
|||||||
- POSTGRES_USER=postgres
|
- POSTGRES_USER=postgres
|
||||||
volumes:
|
volumes:
|
||||||
- ./init_db.sql:/docker-entrypoint-initdb.d/init_db.sql
|
- ./init_db.sql:/docker-entrypoint-initdb.d/init_db.sql
|
||||||
- indexer-pg:/var/lib/postgresql/data
|
- celo-indexer-pg:/var/lib/postgresql/data
|
||||||
ports:
|
ports:
|
||||||
- "127.0.0.1:5432:5432"
|
- "127.0.0.1:5432:5432"
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD-SHELL", "pg_isready"]
|
test: ["CMD-SHELL", "pg_isready"]
|
||||||
interval: 10s
|
interval: 10s
|
||||||
timeout: 5s
|
timeout: 5s
|
||||||
retries: 5
|
retries: 5
|
||||||
|
celo-indexer:
|
||||||
|
image: celo-indexer:latest
|
||||||
|
restart: unless-stopped
|
||||||
|
depends_on:
|
||||||
|
postgres:
|
||||||
|
condition: service_healthy
|
||||||
|
environment:
|
||||||
|
# Point to the correct celo-tracker JetStream instance
|
||||||
|
- INDEXER_JETSTREAM__ENDPOINT=nats://nats:4222
|
||||||
|
ports:
|
||||||
|
- 127.0.0.1:5002:5002
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
indexer-pg:
|
celo-indexer-pg:
|
||||||
driver: local
|
driver: local
|
Loading…
Reference in New Issue
Block a user