2017-01-18 51 views
1

嗨所有我已经在我的笔记本电脑赢7使用码头工具箱安装hyperledger项目。我有同行和memberrvc conatiners运行。而且我能够调用和查询chaincode像peer chaincode query -l golang -n mycc -c '{"Args": ["query", "b"]}',也能够使用curl命令的REST API从内部泊坞窗机如何从铬邮递员运行hyperledger织物REST api

泊坞窗机SSH默认

curl -H "Content-Type: application/json" -X POST -d '{ "jsonrpc": "2.0", "method": "query", "params": {"type": 1,"chaincodeID":{"name":"mycc"},"ctorMsg": {"args":["query", "a"]},"secureContext": "jim" }, "id":5}' 172.17.0.3:7050/chaincode

但问题是无法从浏览器访问这个相同的REST api“172.17.0.3:7050/chaincode”。 我泊坞窗机的ip为:192.168.99.100

对端IP:172.17.0.3

REST API端口:7050

enter image description here

enter image description here

enter image description here

我试着同时提供所有可能的IP和端口组合它无法从浏览器访问。你能帮助我使用什么IP和端口组合来从浏览器访问REST API。以及我如何找到API。

+0

你尝试通过DHCP分配的IP地址? [从屏幕截图中我认为它是192.168.99.100]另外,使用docker-compose配置有意地映射端口将是一个好主意。 – Ashishkel

+0

我找到了解决方案。是的我们需要在docker compose中映射端口,并且我们还需要将该端口映射到虚拟机设置中的窗口上的某个其他端口。例如7050至3000.感谢您的答复 – Sushil

回答

1

的回答是:在

地图默认REST港口码头工人,compose.yml文件

membersrvc: 
    image: hyperledger/fabric-membersrvc 
    command: membersrvc 
vp0: 
    image: hyperledger/fabric-peer 
    ports: 
    - "7050:7050" 
    environment: 
    - CORE_PEER_ADDRESSAUTODETECT=true 
    - CORE_VM_ENDPOINT=http://localhost:2375 
    - CORE_LOGGING_LEVEL=DEBUG 
    - CORE_PEER_ID=vp0 
    - CORE_PEER_PKI_ECA_PADDR=membersrvc:7054 
    - CORE_PEER_PKI_TCA_PADDR=membersrvc:7054 
    - CORE_PEER_PKI_TLSCA_PADDR=membersrvc:7054 
    - CORE_SECURITY_ENABLED=true 
    - CORE_SECURITY_ENROLLID=test_vp0 
    - CORE_SECURITY_ENROLLSECRET=MwYpmSRjupbT 
    links: 
    - membersrvc 
    command: sh -c "sleep 5; peer node start --peer-chaincodedev" 

现在这个7050端口的VM下使用,所以我们应该映射此端口为其他端口,例如窗口3000

您需要了解的是,在此设置,与泊坞窗工具包,你居然有两个不同级别的端口映射。首先在容器和linux VM docker之间建立映射,然后在linux VM和Windows之间进行映射。 docker-compose.yml文件中指定的映射只影响前者。对于后者,你需要在VirtualBox上进行设置。

要设置第二个映射,请启动VirtualBox Manager。 enter image description here

选择名为“default”的正在运行的VM。点击“设置”。选择“网络”。 enter image description here

打开“高级”部分并点击“端口转发”。点击右侧的“添加新的端口转发规则”按钮(带加号的绿色钻石)。然后将主机端口设置为3000,将来宾端口设置为7050。

enter image description here

单击确定。而已。

现在,将浏览器指向https://localhost:3000/network/peers 你应该从你的跑步对上市一个对等返回的页面:

enter image description here