Skip to content

Commit

Permalink
ci: Adding docker-compose for zetacored full rpc node and mainnet bit…
Browse files Browse the repository at this point in the history
…coin node. (#1677)

* Adding docker-compose for rpc full node and bitcoin node.
  • Loading branch information
gzukel authored Feb 13, 2024
1 parent ae22f1e commit 26e9e26
Show file tree
Hide file tree
Showing 10 changed files with 1,427 additions and 2 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,6 @@ jobs:
- name: Clean Up Workspace
if: always()
shell: bash
run: rm -rf *
run: sudo rm -rf *


12 changes: 11 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -293,4 +293,14 @@ release:
-v `pwd`:/go/src/$(PACKAGE_NAME) \
-w /go/src/$(PACKAGE_NAME) \
ghcr.io/goreleaser/goreleaser-cross:${GOLANG_CROSS_VERSION} \
release --clean --skip-validate
release --clean --skip-validate

###############################################################################
### Local Mainnet Development ###
###############################################################################

mainnet-zetarpc-node:
cd contrib/local-mainnet/zetacored && docker-compose up

mainnet-bitcoind-node:
cd contrib/local-mainnet/bitcoind && docker-compose up
1 change: 1 addition & 0 deletions changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
## Unreleased

* `zetaclientd start` : 2 inputs required from stdin
* Added docker-compose and make commands for launching full nodes. `make mainnet-zetarpc-node` `make mainnet-bitcoind-node`

### Refactor

Expand Down
23 changes: 23 additions & 0 deletions contrib/local-mainnet/bitcoind/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
version: '3'

services:
bitcoin:
image: zetachain/bitcoin:35-mainnet
platform: linux/amd64
environment:
- bitcoin_username=test
- bitcoin_password=test
- NETWORK_HEIGHT_URL=https://blockstream.info/api/blocks/tip/height
- WALLET_NAME=tssMainnet
- WALLET_ADDRESS=bc1qm24wp577nk8aacckv8np465z3dvmu7ry45el6y
- SNAPSHOT_URL=https://storage.googleapis.com/bitcoin-rpc-snapshots-prod/bitcoin.tar
- SNAPSHOT_RESTORE=true
- CLEAN_SNAPSHOT=true
- DOWNLOAD_SNAPSHOT=true
volumes:
- bitcoin_data:/root/
ports:
- 8332:8332

volumes:
bitcoin_data:
77 changes: 77 additions & 0 deletions contrib/local-mainnet/zetacored/configs/app.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
minimum-gas-prices = "10000000000azeta"
pruning = "nothing"
pruning-keep-recent = "0"
pruning-keep-every = "0"
pruning-interval = "0"
halt-height = 0
halt-time = 0
min-retain-blocks = 0
inter-block-cache = true
index-events = []
iavl-cache-size = 781250
iavl-disable-fastnode = true

[telemetry]
service-name = "tss"
enabled = true
enable-hostname = true
enable-hostname-label = true
enable-service-label = false
prometheus-retention-time = 10
global-labels = [ ]

[api]
enable = true
swagger = true
address = "tcp://0.0.0.0:1317"
max-open-connections = 1000
rpc-read-timeout = 10
rpc-write-timeout = 0
rpc-max-body-bytes = 1000000
enabled-unsafe-cors = false

[rosetta]
enable = false
address = ":8080"
blockchain = "app"
network = "network"
retries = 3
offline = false

[grpc]
enable = true
address = "0.0.0.0:9090"

[grpc-web]
enable = true
address = "127.0.0.1:9091"
enable-unsafe-cors = false

[state-sync]
snapshot-interval = 0
snapshot-keep-recent = 2

[evm]
tracer = ""
max-tx-gas-wanted = 0

[json-rpc]
enable = true
address = "0.0.0.0:8545"
ws-address = "0.0.0.0:8546"
api = "eth,net,web3,txpool,personal,debug"
gas-cap = 25000000
evm-timeout = "5s"
txfee-cap = 1
filter-cap = 200
feehistory-cap = 100
logs-cap = 10000
block-range-cap = 10000
http-timeout = "30s"
http-idle-timeout = "2m0s"
allow-unprotected-txs = false
max-open-connections = 0
enable-indexer = false

[tls]
certificate-path = ""
5 changes: 5 additions & 0 deletions contrib/local-mainnet/zetacored/configs/client.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
chain-id = "zetachain_7000-1"
keyring-backend = "test"
output = "text"
node = "tcp://localhost:26657"
broadcast-mode = "sync"
116 changes: 116 additions & 0 deletions contrib/local-mainnet/zetacored/configs/config.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
proxy_app = "tcp://127.0.0.1:26658"
moniker = "main-rpc"
fast_sync = true
db_backend = "pebbledb"
db_dir = "data"
log_level = "info"
log_format = "plain"
genesis_file = "config/genesis.json"
priv_validator_key_file = "config/priv_validator_key.json"
priv_validator_state_file = "data/priv_validator_state.json"
priv_validator_laddr = ""
node_key_file = "config/node_key.json"
abci = "socket"
filter_peers = false

[rpc]
laddr = "tcp://0.0.0.0:26657"
cors_allowed_origins = []
cors_allowed_methods = ["HEAD", "GET", "POST", ]
cors_allowed_headers = ["Origin", "Accept", "Content-Type", "X-Requested-With", "X-Server-Time", ]
grpc_laddr = ""
grpc_max_open_connections = 900
unsafe = false
max_open_connections = 900
max_subscription_clients = 100
max_subscriptions_per_client = 5
experimental_subscription_buffer_size = 200
experimental_websocket_write_buffer_size = 200
experimental_close_on_slow_client = false
timeout_broadcast_tx_commit = "10s"
max_body_bytes = 1000000
max_header_bytes = 1048576
tls_cert_file = ""
tls_key_file = ""
pprof_laddr = "localhost:6060"

[p2p]
laddr = "tcp://0.0.0.0:26656"
external_address = "72.19.172.89:26656"
seeds = "[email protected]:26656"
persistent_peers = "[email protected]:26656"
upnp = false
addr_book_file = "config/addrbook.json"
addr_book_strict = true
max_num_inbound_peers = 120
max_num_outbound_peers = 60
unconditional_peer_ids = ""
persistent_peers_max_dial_period = "0s"
flush_throttle_timeout = "100ms"
max_packet_msg_payload_size = 1024
send_rate = 5120000
recv_rate = 5120000
pex = true
seed_mode = false
private_peer_ids = ""
allow_duplicate_ip = true
handshake_timeout = "20s"
dial_timeout = "3s"

[mempool]
version = "v0"
recheck = true
broadcast = true
wal_dir = ""

size = 5000
max_txs_bytes = 1073741824
cache_size = 10000
keep-invalid-txs-in-cache = false
max_tx_bytes = 1048576
max_batch_bytes = 0
ttl-duration = "0s"
ttl-num-blocks = 0

[statesync]
enable = "true"
rpc_servers = "34.69.20.168:26657,34.69.20.168:26657"
trust_height = "1542228"
trust_hash = "5B3377FE8F1D2A64E56D203C205AA68C64BB95269C9BD1B199B79225B4373BB0"
trust_period = "168h0m0s"
discovery_time = "15s"
temp_dir = ""
chunk_request_timeout = "10s"
chunk_fetchers = "4"

[fastsync]
version = "v0"

[consensus]
wal_file = "data/cs.wal/wal"
timeout_propose = "3s"
timeout_propose_delta = "500ms"
timeout_prevote = "1s"
timeout_prevote_delta = "500ms"
timeout_precommit = "1s"
timeout_precommit_delta = "500ms"
timeout_commit = "5s"
double_sign_check_height = 0
skip_timeout_commit = false
create_empty_blocks = true
create_empty_blocks_interval = "0s"
peer_gossip_sleep_duration = "100ms"
peer_query_maj23_sleep_duration = "2s"

[storage]
discard_abci_responses = false

[tx_index]
indexer = "kv"
psql-conn = ""

[instrumentation]
prometheus = true
prometheus_listen_addr = ":26660"
max_open_connections = 3
namespace = "tendermint"
Loading

0 comments on commit 26e9e26

Please sign in to comment.