All commands accept configuration, either via config file, or at the command line.
There are 3 default locations where configfiles are loaded from:
Files are loaded in order (if they exist) and override each others settings.
To specify a different config file use the
Inside a config file, you can put options for the different commands, separated into categories.
all: network: bitcoin storage: sequel::postgres:/bitcoin command: 127.0.0.1:1234 blockchain: max: connect: 30 wallet: keystore: "simple::file=keys.json"
Options in the
all category are loaded by every command, and
are loaded first (so command-specific options will override them).
Other categories are loaded by the corresponding command and may override
options from the
all category (ie.
all: network: bitcoin # network identifier ("bitcoin", "testnet3", "namecoin") command: "127.0.0.1:9999" # IP:Port to listen for incomming command connections listen: "0.0.0.0:8332" # IP:Port to listen for incoming peer connections connect: "" # List of IP:Port,IP:Port of nodes to connect to storage: "sequel::sqlite://~/.bitcoin-ruby/<network>/blocks.db" # storage backend to use (see STORAGE) node: headers_only: false # download/store only block headers (experimental) dns: true # query peers from dns server epoll: false epoll_limit: 10000 epoll_user: nil log: # log levels (debug, info, warn, error, fatal) network: info storage: info max: connections: 32 # number of peer connections addr: 1024 # peer-address store size queue: 500 # storage-queue size inv: 500 # inventory-queue size intervals: queue: 5 # work storage queue inv_queue: 5 # work inventory queue addrs: 15 # collect new peer addrs connect: 30 # connect to new peers wallet: keystore: "simple::file=~/.bitcoin-ruby/<network>/keys.json" # keystore to use