{"id":15664843,"url":"https://github.com/austintgriffith/poa-blockscout-docker","last_synced_at":"2025-05-06T19:29:26.474Z","repository":{"id":78714110,"uuid":"145475415","full_name":"austintgriffith/poa-blockscout-docker","owner":"austintgriffith","description":"Dockerized version of the POA BlockScout. Save time, don't build all those dependencies locally.","archived":false,"fork":false,"pushed_at":"2018-10-17T18:06:38.000Z","size":23,"stargazers_count":16,"open_issues_count":0,"forks_count":5,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-31T02:11:51.946Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/austintgriffith.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-20T22:08:32.000Z","updated_at":"2021-11-13T08:24:07.000Z","dependencies_parsed_at":null,"dependency_job_id":"73bb8562-1f48-4d97-b6da-01d51aa6e0a1","html_url":"https://github.com/austintgriffith/poa-blockscout-docker","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/austintgriffith%2Fpoa-blockscout-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/austintgriffith%2Fpoa-blockscout-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/austintgriffith%2Fpoa-blockscout-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/austintgriffith%2Fpoa-blockscout-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/austintgriffith","download_url":"https://codeload.github.com/austintgriffith/poa-blockscout-docker/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252752765,"owners_count":21798848,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-03T13:44:20.740Z","updated_at":"2025-05-06T19:29:26.467Z","avatar_url":"https://github.com/austintgriffith.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# poa-blockscout-docker\n\nRun [POA BlockScout](https://github.com/poanetwork/blockscout) with two simple commands:\n\nBring up a database:\n```\ndocker run --name blockscout-postgres \\\n  -e POSTGRES_PASSWORD=blockscout \\\n  -e POSTGRES_USER=blockscout \\\n  --rm -d postgres\n```\n\nBring up BlockScout:\n```\ndocker run -ti --rm --name blockscout \\\n  --link blockscout-postgres:postgres \\\n  -p 4000:4000 austingriffith/blockscout\n```\n\nThen open a browser window to [http://0.0.0.0:4000](http://0.0.0.0:4000)\n\n\n\n\u003cimg width=\"1190\" alt=\"poa blockscout screenshot\" src=\"https://user-images.githubusercontent.com/2653167/44372629-15ab3880-a4a2-11e8-9a52-ee8daebd4bcf.png\"\u003e\n\n\n-----------\n\n\n### Using [Clevis](https://github.com/austintgriffith/clevis):\n```\ndocker run -ti --rm --name blockscout \\\n  --link blockscout-postgres:postgres \\\n  --link clevis:clevis \\\n  -e ETHEREUM_JSONRPC_VARIANT=geth \\\n  -e ETHEREUM_JSONRPC_HTTP_URL=http://clevis:8545 \\\n  -p 4000:4000 austingriffith/blockscout\n```\n(currently throwing error:)\n```\n** (FunctionClauseError) no function clause matching in EthereumJSONRPC.Transaction.elixir_to_params/1\n    (ethereum_jsonrpc) lib/ethereum_jsonrpc/transaction.ex:106: EthereumJSONRPC.Transaction.elixir_to_params(%{\"blockHash\" =\u003e \"0x83706f426d4cab3239935c42d2af2069585dedbe019f98f7d99f938184348105\", \"blockNumber\" =\u003e 1, \"from\" =\u003e \"0xdebf87caf555837796604a177a462456df26607b\", \"gas\" =\u003e 5500000, \"gasPrice\" =\u003e 1600000000, \"hash\" =\u003e \"0x94c9770121728693ee6fa12a1785315d6690550e3bd1d7bc9c05d4c54709ea3a\", \"input\" =\u003e \"0x6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a723058206bd6a50040f1d348af1aa5490b88c3323913810d3f120fc2e97d5b55269f215f0029\", \"nonce\" =\u003e 0, \"to\" =\u003e \"0x0\", \"transactionIndex\" =\u003e 0, \"value\" =\u003e 0})\n    (elixir) lib/enum.ex:1314: Enum.\"-map/2-lists^map/1-0-\"/2\n    (ethereum_jsonrpc) lib/ethereum_jsonrpc.ex:426: EthereumJSONRPC.handle_get_blocks/1\n    (indexer) lib/indexer/block_fetcher.ex:197: Indexer.BlockFetcher.import_range/2\n    (elixir) lib/task/supervised.ex:89: Task.Supervised.do_apply/2\n    (elixir) lib/task/supervised.ex:38: Task.Supervised.reply/5\n    (stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3\nLast message: {:EXIT, #PID\u003c0.1234.0\u003e, {:function_clause, [{EthereumJSONRPC.Transaction, :elixir_to_params, [%{\"blockHash\" =\u003e \"0x83706f426d4cab3239935c42d2af2069585dedbe019f98f7d99f938184348105\", \"blockNumber\" =\u003e 1, \"from\" =\u003e \"0xdebf87caf555837796604a177a462456df26607b\", \"gas\" =\u003e 5500000, \"gasPrice\" =\u003e 1600000000, \"hash\" =\u003e \"0x94c9770121728693ee6fa12a1785315d6690550e3bd1d7bc9c05d4c54709ea3a\", \"input\" =\u003e \"0x6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a723058206bd6a50040f1d348af1aa5490b88c3323913810d3f120fc2e97d5b55269f215f0029\", \"nonce\" =\u003e 0, \"to\" =\u003e \"0x0\", \"transactionIndex\" =\u003e 0, \"value\" =\u003e 0}], [file: 'lib/ethereum_jsonrpc/transaction.ex', line: 106]}, {Enum, :\"-map/2-lists^map/1-0-\", 2, [file: 'lib/enum.ex', line: 1314]}, {EthereumJSONRPC, :handle_get_blocks, 1, [file: 'lib/ethereum_jsonrpc.ex', line: 426]}, {Indexer.BlockFetcher, :import_range, 2, [file: 'lib/indexer/block_fetcher.ex', line: 197]}, {Task.Supervised, :do_apply, 2, [file: 'lib/task/supervised.ex', line: 89]}, {Task.Supervised, :reply, 5, [file: 'lib/task/supervised.ex', line: 38]}, {:proc_lib, :init_p_do_apply, 3, [file: 'proc_lib.erl', line: 249]}]}}\nState: %Indexer.Sequence{current: nil, queue: {[], []}, step: -10}\n[error] Task #PID\u003c0.1241.0\u003e started from #PID\u003c0.1238.0\u003e terminating\n```\n\n\n### Local Geth Node:\n```\ndocker run -ti --rm --name blockscout \\\n  --link blockscout-postgres:postgres \\\n  -e ETHEREUM_JSONRPC_VARIANT=geth \\\n  -e ETHEREUM_JSONRPC_HTTP_URL=http://0.0.0.0:8545 \\\n  -p 4000:4000 austingriffith/blockscout\n```\n(currently throwing error:)\n```\nFunction: \u0026Indexer.BlockFetcher.Catchup.task/1\n    Args: [%Indexer.BlockFetcher.Catchup{block_fetcher: %Indexer.BlockFetcher{blocks_batch_size: 10, blocks_concurrency: 10, broadcast: false, callback_module: Indexer.BlockFetcher.Catchup, json_rpc_named_arguments: [transport: EthereumJSONRPC.HTTP, transport_options: [http: EthereumJSONRPC.HTTP.HTTPoison, url: \"http://0.0.0.0:8545\", http_options: [recv_timeout: 60000, timeout: 60000, hackney: [pool: :ethereum_jsonrpc]]], variant: EthereumJSONRPC.Geth], receipts_batch_size: 250, receipts_concurrency: 10, sequence: nil}, bound_interval: %Indexer.BoundInterval{current: 2500, maximum: 25000, minimum: 2500}, task: nil}]\n[error] Catchup index stream exited with reason ({{:badmatch, {:error, :econnrefused}}, [{Indexer.BlockFetcher.Catchup, :task, 1, [file: 'lib/indexer/block_fetcher/catchup.ex', line: 55]}, {Task.Supervised, :do_apply, 2, [file: 'lib/task/supervised.ex', line: 89]}, {Task.Supervised, :reply, 5, [file: 'lib/task/supervised.ex', line: 38]}, {:proc_lib, :init_p_do_apply, 3, [file: 'proc_lib.erl', line: 249]}]}). Restarting\n[error] Task #PID\u003c0.1081.0\u003e started from Indexer.BlockFetcher.Supervisor terminating\n** (MatchError) no match of right hand side value: {:error, :econnrefused}\n    (indexer) lib/indexer/block_fetcher/catchup.ex:55: Indexer.BlockFetcher.Catchup.task/1\n    (elixir) lib/task/supervised.ex:89: Task.Supervised.do_apply/2\n    (elixir) lib/task/supervised.ex:38: Task.Supervised.reply/5\n    (stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3\n```\n\n\n### Local Geth Node (by IP address):\n```\ndocker run -ti --rm --name blockscout \\\n  --link blockscout-postgres:postgres \\\n  -e ETHEREUM_JSONRPC_VARIANT=geth \\\n  -e ETHEREUM_JSONRPC_HTTP_URL=http://10.0.0.107:8545 \\\n  -p 4000:4000 austingriffith/blockscout\n```\n(currently throwing error:)\n```\n** (FunctionClauseError) no function clause matching in EthereumJSONRPC.Transaction.elixir_to_params/1\n    (ethereum_jsonrpc) lib/ethereum_jsonrpc/transaction.ex:106: EthereumJSONRPC.Transaction.elixir_to_params(%{\"blockHash\" =\u003e \"0x83706f426d4cab3239935c42d2af2069585dedbe019f98f7d99f938184348105\", \"blockNumber\" =\u003e 1, \"from\" =\u003e \"0xdebf87caf555837796604a177a462456df26607b\", \"gas\" =\u003e 5500000, \"gasPrice\" =\u003e 1600000000, \"hash\" =\u003e \"0x94c9770121728693ee6fa12a1785315d6690550e3bd1d7bc9c05d4c54709ea3a\", \"input\" =\u003e \"0x6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a723058206bd6a50040f1d348af1aa5490b88c3323913810d3f120fc2e97d5b55269f215f0029\", \"nonce\" =\u003e 0, \"to\" =\u003e \"0x0\", \"transactionIndex\" =\u003e 0, \"value\" =\u003e 0})\n    (elixir) lib/enum.ex:1314: Enum.\"-map/2-lists^map/1-0-\"/2\n    (ethereum_jsonrpc) lib/ethereum_jsonrpc.ex:426: EthereumJSONRPC.handle_get_blocks/1\n    (indexer) lib/indexer/block_fetcher.ex:197: Indexer.BlockFetcher.import_range/2\n    (elixir) lib/task/supervised.ex:89: Task.Supervised.do_apply/2\n    (elixir) lib/task/supervised.ex:38: Task.Supervised.reply/5\n    (stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3\nFunction: \u0026:erlang.apply/2\n    Args: [#Function\u003c8.109633770/1 in Indexer.BlockFetcher.stream_import/1\u003e, [2..0]]\n[error] Catchup index stream exited with reason ({:function_clause, [{EthereumJSONRPC.Transaction, :elixir_to_params, [%{\"blockHash\" =\u003e \"0x83706f426d4cab3239935c42d2af2069585dedbe019f98f7d99f938184348105\", \"blockNumber\" =\u003e 1, \"from\" =\u003e \"0xdebf87caf555837796604a177a462456df26607b\", \"gas\" =\u003e 5500000, \"gasPrice\" =\u003e 1600000000, \"hash\" =\u003e \"0x94c9770121728693ee6fa12a1785315d6690550e3bd1d7bc9c05d4c54709ea3a\", \"input\" =\u003e \"0x6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a723058206bd6a50040f1d348af1aa5490b88c3323913810d3f120fc2e97d5b55269f215f0029\", \"nonce\" =\u003e 0, \"to\" =\u003e \"0x0\", \"transactionIndex\" =\u003e 0, \"value\" =\u003e 0}], [file: 'lib/ethereum_jsonrpc/transaction.ex', line: 106]}, {Enum, :\"-map/2-lists^map/1-0-\", 2, [file: 'lib/enum.ex', line: 1314]}, {EthereumJSONRPC, :handle_get_blocks, 1, [file: 'lib/ethereum_jsonrpc.ex', line: 426]}, {Indexer.BlockFetcher, :import_range, 2, [file: 'lib/indexer/block_fetcher.ex', line: 197]}, {Task.Supervised, :do_apply, 2, [file: 'lib/task/supervised.ex', line: 89]}, {Task.Supervised, :reply, 5, [file: 'lib/task/supervised.ex', line: 38]}, {:proc_lib, :init_p_do_apply, 3, [file: 'proc_lib.erl', line: 249]}]}). Restarting\n[error] GenServer #PID\u003c0.1071.0\u003e terminating\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faustintgriffith%2Fpoa-blockscout-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faustintgriffith%2Fpoa-blockscout-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faustintgriffith%2Fpoa-blockscout-docker/lists"}