Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services ec2中的Runnig geth给出错误,panic:runtime错误:无效内存地址或零指针取消引用_Amazon Web Services_Docker_Amazon Ec2_Ethereum_Geth - Fatal编程技术网

Amazon web services ec2中的Runnig geth给出错误,panic:runtime错误:无效内存地址或零指针取消引用

Amazon web services ec2中的Runnig geth给出错误,panic:runtime错误:无效内存地址或零指针取消引用,amazon-web-services,docker,amazon-ec2,ethereum,geth,Amazon Web Services,Docker,Amazon Ec2,Ethereum,Geth,我试图实现的是在aws EC2上运行以太坊/客户端 实例,并能够从远程客户端访问它,以便使用Rinkeby测试网络 我正在尝试在aws上的ec2实例上运行一个gethdocker映像 当我使用下面的命令运行docker时,我得到以下错误 sudo docker run -it -p 8545:8545 -p 30303:30303 ethereum/client-go --rpc --rinkeby --syncmode "fast" --rpc --rpcapi 'db,eth,net,web

我试图实现的是在aws EC2上运行以太坊/客户端 实例,并能够从远程客户端访问它,以便使用Rinkeby测试网络

我正在尝试在aws上的ec2实例上运行一个
geth
docker映像
当我使用下面的命令运行docker时,我得到以下错误

sudo docker run -it -p 8545:8545 -p 30303:30303 ethereum/client-go --rpc --rinkeby --syncmode "fast" --rpc --rpcapi 'db,eth,net,web3,personal' --rpcaddr XXX.XX.XXX.XXX --cache=1024
其中,--rpcaddr XXX.XX.XXX.XXX是我的弹性IP

当我使用
--rpcaddr 127.0.0.1
运行同一个docker时,它工作正常,但无法从远程客户端访问

sudo docker run -it -p 8545:8545 -p 30303:30303 ethereum/client-go --rpc --rinkeby --syncmode "fast" --rpc --rpcapi 'db,eth,net,web3,personal' --rpcaddr 127.0.0.1 --cache=1024
我试过用

  • 公共DNS(IPv4)
  • IPv4公共IP和
  • 弹性IP
对于--rpcaddr值

此外,我还授予了aws TCP入站和出站端口的安全权限


我这样做对吗?这是运行web3 provider的正确方式吗?

我认为您应该使用卷,因为客户端将尝试下载以太坊区块链,但您当前的设置无法保存区块链

请查看此页面: “要在容器启动之间持久保存下载的区块链数据,请使用Docker数据卷。将/path/on/host替换为要存储数据的位置。”

试试看这是否有用。如果你还有问题,我会很乐意尝试帮助或者考虑在Github上查找GeTub的问题。我看到有人在2017年出现了类似错误,并记录了一个问题,请参见:

你能做什么
--rpcaddr“0.0.0.0”
您需要允许所有(0.0.0.0)从远程客户端连接。它删除了死机:运行时错误:无效内存地址或零指针取消引用,但当我尝试从同一实例连接到提供程序时(使用Web3)我收到错误:无效的JSON RPC响应:未定义@SudharsanSivasankaran
docker run-it-p8545:8545-p30303:30303以太坊/client go--RPC--rinkeby--syncmode“fast”-RPC--rpcapi'db,eth,net,web3,personal'--rpcaddr 0.0.0--cache=1024
您能检查命令吗?sudo docker ps-a给出了最后一个命令31a421e78d30以太坊/客户端go“geth--rpc--rinkeb…”的详细信息,12分钟前退出(2)10分钟前我已经连接了28GB的卷,让我通过再次终止所有进程来再次检查。是否将卷附加到容器或ec2实例?仅附加到实例。尝试使用
$docker…-v/location to volume to mountedt:/root/.ethereum
如果运行
df-h
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xa6e76b]
sudo docker run -it -p 8545:8545 -p 30303:30303 ethereum/client-go --rpc --rinkeby --syncmode "fast" --rpc --rpcapi 'db,eth,net,web3,personal' --rpcaddr 127.0.0.1 --cache=1024
$ docker run -it -p 30303:30303 -v /path/on/host:/root/.ethereum ethereum/client-go