Interfaces binded to by blockstack core/api server


#1

Hey, just updated my blockstack node from 18.x to 19.0.8.1 and found no longer able to communicate with the rpc server.

The reason I think is my calls are proxied through nginx inside docker - so I need the core api server to bind on the docker interface on debian which is 172.18.0.1.

e.g. running on the host
curl http://localhost:6270/v1/names/mike.personal.id
works but
curl http://172.18.0.1:6270/v1/names/mike.personal.id
fails when running inside the docker container.

Looking through the config (cat .blockstack-server/blockstack-server.ini) I see the rpc_port but no parameter for the interfaces to bind on - e.g. in bitcoin this is configured via rpcallowip=172.18.0.0/16.

Can anyone tell me if this is configurable and if so the parameter name and also if its possible to specify more than one interface without specifying the ubiquitous/insecure 0.0.0.0 address e.g. using comma/space sep?

Many thanks, Mike.


#2

Hey @mikecohen.id,

Sorry to hear you’re having trouble. Can you try editing the ~/.blockstack-server/blockstack-server.ini file and making sure the api_host field under [blockstack-api] is set to something besides localhost?


#3

Hi @jude , thanks for the quick reply. I tried this but without success. I’ve made the api requests revert back to core.blockstack.org if they fail which isn’t ideal but works for now. I will take a deeper look when I have time and report back here. Best, Mike.


#4

Hi @jude just to let you know I just got around to updating core to 20.0.8.6 and changed api_host to the docker debian IP 172.18.0.1 in blockstack-server.ini and everything works nicely for my search indexing service. Thanks for your help!