feat: metrics port update -> :5002

This commit is contained in:
Mohamed Sohail 2024-06-10 15:45:43 +08:00
parent 83bb29f217
commit fb22f26e18
Signed by: kamikazechaser
GPG Key ID: 7DD45520C01CD85D
5 changed files with 100 additions and 6 deletions

View File

@ -22,6 +22,6 @@ WORKDIR /service
COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
COPY --from=build /build/* .
EXPOSE 5001
EXPOSE 5002
CMD ["./celo-indexer"]

61
README.md Normal file
View File

@ -0,0 +1,61 @@
# celo-indexer
![GitHub Tag](https://img.shields.io/github/v/tag/grassrootseconomics/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).

View File

@ -2,7 +2,7 @@
go_process = true
[api]
address = ":5001"
address = ":5002"
[postgres]
dsn = "postgres://postgres:postgres@127.0.0.1:5432/ge_celo_data"

View 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

View File

@ -8,7 +8,7 @@ services:
- POSTGRES_USER=postgres
volumes:
- ./init_db.sql:/docker-entrypoint-initdb.d/init_db.sql
- indexer-pg:/var/lib/postgresql/data
- celo-indexer-pg:/var/lib/postgresql/data
ports:
- "127.0.0.1:5432:5432"
healthcheck:
@ -16,7 +16,18 @@ services:
interval: 10s
timeout: 5s
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:
indexer-pg:
celo-indexer-pg:
driver: local