Closed asmith26 closed 7 years ago
You've missed out the http://
in the URLs. Additionally, because of the networking setup with Docker it's recommended to use an accessible IP address/hostname rather than localhost
.
Thank you for your help - running (with http://
) docker run -d --name fgmachine -h $(hostname) -v /var/run/docker.sock:/var/run/docker.sock -e FGLAB_URL=http://<MY LAN IP>:5080 -e FGMACHINE_URL=http://<MY LAN IP>:5081 -p 5081:5081 kaixhin/fgmachine
that has fixed my Invalid protocol
error :-)
Unfortunately I still can't add this FGMachine to run the Bayesian Optimisation experiment via the FGLab GUI (i.e. clicking the add button/drop-down menu nothing happens (no options, messages, errors...)).
Running docker logs fgmachine
initially, I get just Server listening on port 5081
. However after a few minutes my log then gets appended with:
{ RequestError: Error: connect ETIMEDOUT <MY LAN IP>:5080
at new RequestError (/root/FGMachine/node_modules/request-promise-core/lib/errors.js:14:15)
at Request.plumbing.callback (/root/FGMachine/node_modules/request-promise-core/lib/plumbing.js:87:29)
at Request.RP$callback [as _callback] (/root/FGMachine/node_modules/request-promise-core/lib/plumbing.js:46:31)
at self.callback (/root/FGMachine/node_modules/request/request.js:187:22)
at emitOne (events.js:96:13)
at Request.emit (events.js:188:7)
at Request.onRequestError (/root/FGMachine/node_modules/request/request.js:813:8)
at emitOne (events.js:96:13)
at ClientRequest.emit (events.js:188:7)
at Socket.socketErrorListener (_http_client.js:308:9)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
at emitErrorNT (net.js:1272:8)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
name: 'RequestError',
message: 'Error: connect ETIMEDOUT <MY LAN IP>:5080',
cause:
{ Error: connect ETIMEDOUT <MY LAN IP>:5080
at Object.exports._errnoException (util.js:1026:11)
at exports._exceptionWithHostPort (util.js:1049:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1081:14)
code: 'ETIMEDOUT',
errno: 'ETIMEDOUT',
syscall: 'connect',
address: '<MY LAN IP>',
port: 5080 },
error:
{ Error: connect ETIMEDOUT <MY LAN IP>:5080
at Object.exports._errnoException (util.js:1026:11)
at exports._exceptionWithHostPort (util.js:1049:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1081:14)
code: 'ETIMEDOUT',
errno: 'ETIMEDOUT',
syscall: 'connect',
address: '<MY LAN IP>',
port: 5080 },
options:
{ uri: 'http://<MY LAN IP>:5080/api/v1/machines',
method: 'POST',
json:
{ address: 'http://<MY LAN IP>:5081',
hostname: 'asmith26',
os: [Object],
cpus: [Object],
mem: '7.72GB',
gpus: [] },
gzip: true,
callback: [Function: RP$callback],
transform: undefined,
simple: true,
resolveWithFullResponse: false,
transform2xxOnly: false },
response: undefined }
As far as I can tell, this appears to be some timeout error regarding the linking of a docker fgmachine to a docker fglab (??). I'm deploying all docker containers on my one desktop computer (if it helps). Also, http://localhost:5080/api/v1/machines
yields just []
.
Thanks again for any help!
With docker logs fgmachine
you should be seeing:
Server listening on port 5081
Registered with FGLab successfully
Projects registered with FGLab successfully
Corresponding to the following with docker logs fglab
:
<MAC ADDR> - - [07/Sep/2016:16:41:39 +0000] "POST /api/v1/machines HTTP/1.1" 201 623
<MAC ADDR> - - [07/Sep/2016:16:41:39 +0000] "POST /api/v1/machines/57d043439ba0300001c3d76b/projects HTTP/1.1" 200 15
Something is going wrong when trying to register the machine, so there is probably something unusual with your network setup. For instance, if you have proxies you can try experimenting with these environment variables.
It turned out to be my Firewall - adding an exception rule fixed the problem. Thanks again for your help.
I've read all documentation and was trying to run the Bayesian Optimisation example through the Heroku app, but at Step 5 of the "Quickstart" of the github.io documentation, when I click the add button/drop-down menu nothing happens (no options, messages, errors...). Indeed, when I try and Submit a new experiment I get
{"error":"No machine capacity available"}
Thus I tried to deploy FGLab and FGMachine locally via docker, but I'm still having problems with FGMachines:
I've tried:
and (difference is
FGMACHINE_URL=localhost:5081
)Thank you for any help in advance!