--- # Security, json is optional #geth_account_addr: ~ #geth_account_pass: ~ #geth_account_json: ~ # Geth miner extra data geth_extra_data: '{{ hostname }}' # Container config geth_cont_tag: 'v1.9.25' geth_cont_image: 'ethereum/client-go:{{ geth_cont_tag }}' geth_cont_name: 'geth' geth_cont_vol: '/docker/{{ geth_cont_name }}' geth_data_path: '{{ geth_cont_vol }}/data' geth_keys_path: '{{ geth_cont_vol }}/keys' # account geth_account_json_file: '{{ geth_keys_path }}/account.json' geth_account_pass_file: '{{ geth_keys_path }}/account.pass' geth_account_addr_file: '{{ geth_keys_path }}/account.addr' geth_enode_file: '{{ geth_keys_path }}/enode' geth_sync_check_script: '/usr/local/bin/check_sync_{{ geth_cont_name | replace("-", "_") }}.sh' # RPC port of administration geth_rpc_enabled: true geth_rpc_addr: '127.0.0.1' geth_rpc_port: 8545 # Available: admin, clique, debug, eth, les, miner, net, personal, rpc, txpool, web3 geth_rcp_api: 'eth,net,web3,personal,admin' # Alternative IPC socket geth_ipc_path: '/data/geth.ipc' # Web Sockets API geth_websocket_enabled: true geth_websocket_port: '{{ geth_rpc_port + 1 | int }}' geth_websocket_api: 'eth,net,web3,personal,admin' geth_websocket_origins: 'localhost' # useful for linking containers geth_extra_alias: geth geth_aliases: - 'localhost' - '{{ geth_extra_alias }}' - '{{ hostname }}' - '{{ hostname }}.tinc' - '{{ ansible_local.tinc.vpn_ip }}' # Sync mode: full, fast, light geth_sync_mode: 'light' # Maximum number of untrusted peers that can connect geth_max_peers: 50 # Maximum pending connection attempts geth_max_pend_peers: 30 # Maximum percentage of time allowed for serving LES requests (0-90) geth_light_serv: 90 # Peer discovery protocol geth_v5disc_enabled: true # List of trusted peers to connect to geth_trusted_peers: [] geth_trusted_peers_file: '{{ geth_data_path }}/trusted-nodes.json' # Enable metrics geth_metrics_enabled: true # Mining settings geth_miner_enabled: false geth_miner_threads: '{{ ansible_processor_vcpus }}' geth_miner_account: '{{ geth_account_addr }}' # Whisper protocol geth_whisper_enabled: false geth_whisper_pow: 0.2 # logging geth_lov_level_names: silent: 0 error: 1 warn: 2 info: 3 debug: 4 detail: 5 geth_log_level_name: 'info' geth_log_level_id: '{{ geth_lov_level_names[geth_log_level_name | lower] | mandatory }}' # Available: mainnet, goerli, rinkeby, yolov1, ropsten geth_network_name: 'mainnet' # Port to listen on geth_port: 30303 # Address to advertise geth_public_addr: '{{ ansible_host }}' # Consul config geth_consul_address: '{{ ansible_host }}' geth_consul_rpc_address: '{{ ansible_local.tinc.vpn_ip }}' geth_consul_enabled: true geth_consul_default_tags: - geth - '{{ env }}.{{ stage }}' - '{{ geth_network_name }}' geth_consul_extra_tags: [] geth_consul_tags: '{{ geth_consul_default_tags + geth_consul_extra_tags }}' # Geth cache size. WARNING: Values higher than 1GB cause issues. geth_cache_size: ~ # Container memory limits geth_cont_mem_ratio: 0.6 geth_cont_mem_limit: '{{ (ansible_memtotal_mb * geth_cont_mem_ratio|float) | int }}' geth_cont_swap_limit: '{{ (geth_cont_mem_limit|int) + (ansible_swaptotal_mb * geth_cont_mem_ratio|float) | int }}' # generic container beaviour cont_state: started cont_restart: false cont_recreate: false cont_restart_policy: always