Rename dev_env to rinkeby_env, added make commands description to readme

This commit is contained in:
Maxim Krasilnikov 2018-06-21 22:21:34 +03:00
parent 70f7c63aa8
commit 1ff349e629
5 changed files with 55 additions and 20 deletions

View File

@ -83,23 +83,23 @@ import:
test -n "$(NAME)" # $$NAME test -n "$(NAME)" # $$NAME
psql $(NAME) < db/schema.sql psql $(NAME) < db/schema.sql
#Dev environment #Rinkeby docker environment
DEV_COMPOSE_FILE=dockerfiles/dev/docker-compose.yml RINKEBY_COMPOSE_FILE=dockerfiles/rinkeby/docker-compose.yml
.PHONY: dev_env_up .PHONY: rinkeby_env_up
dev_env_up: rinkeby_env_up:
docker-compose -f $(DEV_COMPOSE_FILE) up -d geth docker-compose -f $(RINKEBY_COMPOSE_FILE) up -d geth
docker-compose -f $(DEV_COMPOSE_FILE) up --build migrations docker-compose -f $(RINKEBY_COMPOSE_FILE) up --build migrations
docker-compose -f $(DEV_COMPOSE_FILE) up -d --build vulcanizedb docker-compose -f $(RINKEBY_COMPOSE_FILE) up -d --build vulcanizedb
.PHONY: dev_env_deploy .PHONY: rinkeby_env_deploy
dev_env_deploy: rinkeby_env_deploy:
docker-compose -f $(DEV_COMPOSE_FILE) up -d --build vulcanizedb docker-compose -f $(RINKEBY_COMPOSE_FILE) up -d --build vulcanizedb
.PHONY: dev_env_migrate .PHONY: dev_env_migrate
dev_env_migrate: rinkeby_env_migrate:
docker-compose -f $(DEV_COMPOSE_FILE) up --build migrations docker-compose -f $(RINKEBY_COMPOSE_FILE) up --build migrations
.PHONY: dev_env_down .PHONY: rinkeby_env_down
dev_env_down: rinkeby_env_down:
docker-compose -f $(DEV_COMPOSE_FILE) down docker-compose -f $(RINKEBY_COMPOSE_FILE) down

View File

@ -69,6 +69,29 @@ Sync VulcanizeDB from the LevelDB underlying a Geth node.
- `--ending-block-number`/`-e`: block number to sync to - `--ending-block-number`/`-e`: block number to sync to
- `--all`/`-a`: sync all missing blocks - `--all`/`-a`: sync all missing blocks
## Start full environment in docker by single command
### Geth Rinkeby
make command | description
------------------- | ----------------
rinkeby_env_up | start geth, postgres and rolling migrations, after migrations done starting vulcanizedb container
rinkeby_env_deploy | build and run vulcanizedb container in rinkeby environment
rinkeby_env_migrate | build and run rinkeby env migrations
rinkeby_env_down | stop and remove all rinkeby env containers
Success run of the VulcanizeDB container require full geth state sync,
attach to geth console and check sync state:
```bash
$ docker exec -it rinkeby_vulcanizedb_geth geth --rinkeby attach
...
> eth.syncing
false
```
If you have full rinkeby chaindata you can move it to `rinkeby_vulcanizedb_geth_data` docker volume to skip long wait of sync.
## Running the Tests ## Running the Tests
### Unit Tests ### Unit Tests

View File

@ -5,30 +5,36 @@ services:
vulcanizedb: vulcanizedb:
build: build:
context: ./../../ context: ./../../
dockerfile: dockerfiles/dev/Dockerfile dockerfile: dockerfiles/rinkeby/Dockerfile
container_name: dev_vulcanizedb container_name: rinkeby_vulcanizedb
command: "sync --starting-block-number 0 --config /config.toml" command: "sync --starting-block-number 0 --config /config.toml"
volumes: volumes:
- "./config.toml:/config.toml" - "./config.toml:/config.toml"
- "vulcanizedb_geth_data:/geth" - "vulcanizedb_geth_data:/geth"
networks:
vulcanizedb_net:
migrations: migrations:
image: migrate/migrate:v3.3.0 image: migrate/migrate:v3.3.0
container_name: dev_vulcanizedb_migrations container_name: rinkeby_vulcanizedb_migrations
depends_on: depends_on:
postgres: postgres:
condition: service_healthy condition: service_healthy
command: -database postgresql://postgres:postgres@postgres:5432/vulcanizedb?sslmode=disable -path /migrations up command: -database postgresql://postgres:postgres@postgres:5432/vulcanizedb?sslmode=disable -path /migrations up
volumes: volumes:
- ./../../db/migrations:/migrations - ./../../db/migrations:/migrations
networks:
vulcanizedb_net:
postgres: postgres:
image: postgres:9.6.5-alpine image: postgres:9.6.5-alpine
container_name: dev_vulcanizedb_postgres container_name: rinkeby_vulcanizedb_postgres
environment: environment:
POSTGRES_USER: postgres POSTGRES_USER: postgres
POSTGRES_DB: vulcanizedb POSTGRES_DB: vulcanizedb
POSTGRES_PASSWORD: postgres POSTGRES_PASSWORD: postgres
networks:
vulcanizedb_net:
healthcheck: healthcheck:
test: ["CMD", "pg_isready"] test: ["CMD", "pg_isready"]
interval: 5s interval: 5s
@ -37,12 +43,18 @@ services:
geth: geth:
image: ethereum/client-go:v1.8.11 image: ethereum/client-go:v1.8.11
container_name: dev_vulcanizedb_geth container_name: rinkeby_vulcanizedb_geth
cpus: 0.3 cpus: 0.3
hostname: eth hostname: eth
command: '--rinkeby --rpc --rpcaddr="0.0.0.0" --rpcvhosts="geth"' command: '--rinkeby --rpc --rpcaddr="0.0.0.0" --rpcvhosts="geth"'
volumes: volumes:
- "vulcanizedb_geth_data:/root/.ethereum/rinkeby" - "vulcanizedb_geth_data:/root/.ethereum/rinkeby"
networks:
vulcanizedb_net:
volumes: volumes:
vulcanizedb_geth_data: vulcanizedb_geth_data:
networks:
vulcanizedb_net:
driver: bridge