diff --git a/okt-chain.yml b/okt-chain.yml new file mode 100644 index 00000000..0a2814e5 --- /dev/null +++ b/okt-chain.yml @@ -0,0 +1,52 @@ +docker run -d --name exchain-mainnet-fullnode -v ~/.exchaind/data:/root/.exchaind/data/ -p 8545:8545 -p 26656:26656 okexchain/fullnode-mainnet:latest +services: + okt-chain-client: + image: okexchain/fullnode-mainnet:v1.7.0.5 + stop_grace_period: 5m + ulimits: + nofile: 1048576 + expose: + - "8545" + - "8546" + ports: + - "35885:35885/tcp" + - "35885:35885/udp" + volumes: + - ./okt-chain/mainnet:/root + - okt-chain-db:/data + networks: + - chains + entrypoint: [ "/sbin/tini", "--", "/entrypoint.sh" ] + environment: + PORT: 35885 + restart: unless-stopped + + okt-chain: + restart: unless-stopped + image: nginx + depends_on: + - okt-chain-client + expose: + - 80 + environment: + PROXY_HOST: okt-chain-client + RPC_PORT: 8545 + RPC_PATH: "" + WS_PORT: 8546 + WS_PATH: "" + networks: + - chains + volumes: + - ./nginx-proxy:/etc/nginx/templates + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.okt-chain-stripprefix.stripprefix.prefixes=/okt-chain" + - "traefik.http.services.okt-chain.loadbalancer.server.port=80" + - "traefik.http.routers.okt-chain.entrypoints=websecure" + - "traefik.http.routers.okt-chain.tls.certresolver=myresolver" + - "traefik.http.routers.okt-chain.rule=Host(`$DOMAIN`) && PathPrefix(`/okt-chain`)" + - "traefik.http.routers.okt-chain.middlewares=okt-chain-stripprefix, ipwhitelist" + +volumes: + okt-chain-db: + diff --git a/okt-chain/mainnet/start.sh b/okt-chain/mainnet/start.sh new file mode 100755 index 00000000..1a7e4fc1 --- /dev/null +++ b/okt-chain/mainnet/start.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +if [ ! -d "/data/config" ]; then + exchaind init fullnode --chain-id exchain-66 + wget https://raw.githubusercontent.com/okex/mainnet/main/genesis.json -O /data/config/genesis.json +fi + +exchaind start \ + --chain-id exchain-66 \ + --db_dir /data \ + --rest.laddr tcp://0.0.0.0:8545 \ + --db_backend rocksdb +