From 49d28e3ac295a82de3e6b58ede1428127e391454 Mon Sep 17 00:00:00 2001 From: Pavel Baykov Date: Tue, 30 Nov 2021 18:37:47 -0400 Subject: [PATCH] 94: bug fix docker build --- Dockerfile | 14 ++- docker/default_config.ini | 194 +++++++++++++++++++++++++++++++++++--- 2 files changed, 194 insertions(+), 14 deletions(-) diff --git a/Dockerfile b/Dockerfile index 5f63bd77..7578aa18 100644 --- a/Dockerfile +++ b/Dockerfile @@ -28,6 +28,8 @@ RUN \ ntp \ pkg-config \ wget \ + iputils-ping \ + telnet \ && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* @@ -43,7 +45,7 @@ RUN \ tar -zxvf boost_1_67_0.tar.gz && \ cd boost_1_67_0/ && \ ./bootstrap.sh "--prefix=$BOOST_ROOT" && \ - ./b2 install && \ + ./b2 -j$(nproc) install && \ cd .. ADD . /peerplays-core @@ -61,7 +63,7 @@ RUN \ -DBOOST_ROOT="$BOOST_ROOT" \ -DCMAKE_BUILD_TYPE=Debug \ ../.. && \ - make witness_node cli_wallet && \ + make -j$(nproc) witness_node cli_wallet && \ install -s programs/witness_node/witness_node programs/cli_wallet/cli_wallet /usr/local/bin && \ # # Obtain version @@ -82,11 +84,17 @@ VOLUME ["/var/lib/peerplays", "/etc/peerplays"] # rpc service: EXPOSE 8090 # p2p service: -EXPOSE 1776 +EXPOSE 9777 +EXPOSE 19777 +EXPOSE 29777 +EXPOSE 39777 +EXPOSE 49777 +EXPOSE 59777 # default exec/config files ADD docker/default_config.ini /etc/peerplays/config.ini ADD docker/peerplaysentry.sh /usr/local/bin/peerplaysentry.sh +ADD docker/default_config.ini /usr/local/bin/witness_node_data_dir/config.ini RUN chmod a+x /usr/local/bin/peerplaysentry.sh # Make Docker send SIGINT instead of SIGTERM to the daemon diff --git a/docker/default_config.ini b/docker/default_config.ini index fc7c2d20..45797a4e 100644 --- a/docker/default_config.ini +++ b/docker/default_config.ini @@ -1,17 +1,17 @@ # Endpoint for P2P node to listen on -p2p-endpoint = 0.0.0.0:9090 +p2p-endpoint = 0.0.0.0:9777 # P2P nodes to connect to on startup (may specify multiple times) # seed-node = # JSON array of P2P nodes to connect to on startup -# seed-nodes = +seed-nodes = ["96.46.48.98:9777", "96.46.48.98:19777", "96.46.48.98:29777", "96.46.48.98:39777", "96.46.48.98:49777", "96.46.48.98:59777"] # Pairs of [BLOCK_NUM,BLOCK_ID] that should be enforced as checkpoints. # checkpoint = # Endpoint for websocket RPC to listen on -rpc-endpoint = 0.0.0.0:8090 +rpc-endpoint = 127.0.0.1:8090 # Endpoint for TLS websocket RPC to listen on # rpc-tls-endpoint = @@ -31,6 +31,17 @@ rpc-endpoint = 0.0.0.0:8090 # JSON file specifying API permissions # api-access = +# Whether to enable tracking of votes of standby witnesses and committee members. Set it to true to provide accurate data to API clients, set to false for slightly better performance. +# enable-standby-votes-tracking = + +# Space-separated list of plugins to activate +# plugins = + + +# ============================================================================== +# witness plugin options +# ============================================================================== + # Enable block production, even if the chain is stale. enable-stale-production = false @@ -40,22 +51,183 @@ required-participation = false # ID of witness controlled by this node (e.g. "1.6.5", quotes are required, may specify multiple times) # witness-id = +# IDs of multiple witnesses controlled by this node (e.g. ["1.6.5", "1.6.6"], quotes are required) +# witness-ids = + # Tuple of [PublicKey, WIF private key] (may specify multiple times) -# private-key = ["BTS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV","5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3"] +private-key = ["PPY6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV","5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3"] + + +# ============================================================================== +# debug_witness plugin options +# ============================================================================== + +# Tuple of [PublicKey, WIF private key] (may specify multiple times) +debug-private-key = ["PPY6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV","5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3"] + + +# ============================================================================== +# account_history plugin options +# ============================================================================== # Account ID to track history for (may specify multiple times) # track-account = +# Keep only those operations in memory that are related to account history tracking +partial-operations = 1 + +# Maximum number of operations per account will be kept in memory +max-ops-per-account = 100 + + +# ============================================================================== +# elasticsearch plugin options +# ============================================================================== + +# Elastic Search database node url(http://localhost:9200/) +# elasticsearch-node-url = + +# Number of bulk documents to index on replay(10000) +# elasticsearch-bulk-replay = + +# Number of bulk documents to index on a syncronied chain(100) +# elasticsearch-bulk-sync = + +# Use visitor to index additional data(slows down the replay(false)) +# elasticsearch-visitor = + +# Pass basic auth to elasticsearch database('') +# elasticsearch-basic-auth = + +# Add a prefix to the index(peerplays-) +# elasticsearch-index-prefix = + +# Save operation as object(false) +# elasticsearch-operation-object = + +# Start doing ES job after block(0) +# elasticsearch-start-es-after-block = + +# Save operation as string. Needed to serve history api calls(true) +# elasticsearch-operation-string = + +# Mode of operation: only_save(0), only_query(1), all(2) - Default: 0 +# elasticsearch-mode = + + +# ============================================================================== +# es_objects plugin options +# ============================================================================== + +# Elasticsearch node url(http://localhost:9200/) +# es-objects-elasticsearch-url = + +# Basic auth username:password('') +# es-objects-auth = + +# Number of bulk documents to index on replay(10000) +# es-objects-bulk-replay = + +# Number of bulk documents to index on a synchronized chain(100) +# es-objects-bulk-sync = + +# Store proposal objects(true) +# es-objects-proposals = + +# Store account objects(true) +# es-objects-accounts = + +# Store asset objects(true) +# es-objects-assets = + +# Store balances objects(true) +# es-objects-balances = + +# Store limit order objects(true) +# es-objects-limit-orders = + +# Store feed data(true) +# es-objects-asset-bitasset = + +# Add a prefix to the index(ppobjects-) +# es-objects-index-prefix = + +# Keep only current state of the objects(true) +# es-objects-keep-only-current = + +# Start doing ES job after block(0) +# es-objects-start-es-after-block = + + +# ============================================================================== +# market_history plugin options +# ============================================================================== + # Track market history by grouping orders into buckets of equal size measured in seconds specified as a JSON array of numbers -# bucket-size = [15,60,300,3600,86400] -bucket-size = [60,300,900,1800,3600,14400,86400] -# for 1 min, 5 mins, 30 mins, 1h, 4 hs and 1 day. i think this should be the default. +bucket-size = [15,60,300,3600,86400] # How far back in time to track history for each bucket size, measured in the number of buckets (default: 1000) history-per-size = 1000 -# Max amount of operations to store in the database, per account (drastically reduces RAM requirements) -max-ops-per-account = 1000 -# Remove old operation history # objects from RAM -partial-operations = true +# ============================================================================== +# peerplays_sidechain plugin options +# ============================================================================== + +# ID of SON controlled by this node (e.g. "1.33.5", quotes are required) +# son-id = + +# IDs of multiple SONs controlled by this node (e.g. ["1.33.5", "1.33.6"], quotes are required) +# son-ids = + +# Tuple of [PublicKey, WIF private key] (may specify multiple times) +peerplays-private-key = ["PPY6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV","5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3"] + +# IP address of Bitcoin node +bitcoin-node-ip = 127.0.0.1 + +# ZMQ port of Bitcoin node +bitcoin-node-zmq-port = 11111 + +# RPC port of Bitcoin node +bitcoin-node-rpc-port = 8332 + +# Bitcoin RPC user +bitcoin-node-rpc-user = 1 + +# Bitcoin RPC password +bitcoin-node-rpc-password = 1 + +# Bitcoin wallet +# bitcoin-wallet = + +# Bitcoin wallet password +# bitcoin-wallet-password = + +# Tuple of [Bitcoin public key, Bitcoin private key] (may specify multiple times) +bitcoin-private-key = ["02d0f137e717fb3aab7aff99904001d49a0a636c5e1342f8927a4ba2eaee8e9772","cVN31uC9sTEr392DLVUEjrtMgLA8Yb3fpYmTRj7bomTm6nn2ANPr"] + +# Sidechain retry throttling threshold +sidechain-retry-threshold = 150 + + +# ============================================================================== +# snapshot plugin options +# ============================================================================== + +# Block number after which to do a snapshot +# snapshot-at-block = + +# Block time (ISO format) after which to do a snapshot +# snapshot-at-time = + +# Pathname of JSON file where to store the snapshot +# snapshot-to = + + +# ============================================================================== +# logging options +# ============================================================================== +# +# Logging configuration is loaded from logging.ini by default. +# If logging.ini exists, logging configuration added in this file will be ignored.