在docker中使用命令运行以太坊节点:
sudo docker run -d --restart=always --name ethereum
-p 8545:8545
-p 30303:30303
ethereum/client-go
--rpc --rpcaddr "0.0.0.0" --syncmode light --rpcapi eth,personal
使用选项rpcaddr "0.0.0.0"
,主机可以访问以太坊节点,但其他具有外部IP的机器也可以。
如何拒绝外部机器?
我知道这可以通过iptables或某些防火墙来完成。
可以用码头工人本身来完成吗?
您可以在主机级别限制对端口 8545 的访问。只需在docker run
处添加 127.0.0.1 作为此端口的绑定地址:
sudo docker run -d --restart=always --name ethereum
-p 127.0.0.1:8545:8545
-p 30303:30303
ethereum/client-go
--rpc --rpcaddr "0.0.0.0" --syncmode light --rpcapi eth,personal