Orion上下文代理和Docker – 来自服务器的空回复

我最近开始涉及Orion Context Broker的项目。 试图使用docker在Windows上启动它。

https://hub.docker.com/r/fiware/orion/

第一种方法没有出来,使用原始代码从教程中得到的错误是:

ERROR: yaml.parser.ParserError: while parsing a block mapping in ".\docker-compose.yml", line 1, column 1 expected <block end>, but found '<block mapping start>' in ".\docker-compose.yml", line 5, column 2 

然后我决定继续第二种方法,我用默认参数启动了mongoDB。 我得到它听取连接,并使用从docker网站的2A方式。

  sudo docker run -d --name orion1 -p 1026:1026 fiware/orion 

它似乎已经开始,因为它在启动时没有返回任何错误。 但是,如果我使用:

  curl localhost:1026/version 

我没有收到任何反应,只是冻结,并在mongoDB控制台我没有任何新的连接。 docker集装箱的地址是正确的。 防火墙closures。 它似乎没有连接,但它正在运行。 如果我想再次启动orion上下文代理程序,它会告诉我它已经在运行,所以然后我停止它,删除orion1并可以重新启动它。 当我连接到从另一个控制台运行mongoDB它显示一个新的连接,而与Context Broker连接时没有。

当我检查CB日志时,我得到了

 time=Tuesday 24 Oct 21:37:32 2017.378Z | lvl=ERROR | corr=N/A trans=N/A | from=N/A | srv=N/A | subsrv=N/A | comp=Orion | op=mongoConnectionPool.cpp[152]:mongoConnect | msg=Database Startup Error (cannot connect to mongo - doing 100 retries with a 1000 microsecond interval) 

关于docker-compose.yml失败,复制粘贴有时是棘手的…我build议你直接从github存储库下载 。 以下应该工作:

 wget https://raw.githubusercontent.com/telefonicaid/fiware-orion/master/docker/docker-compose.yml 

关于Orion docker无法连接数据库的问题,请参阅Docker文档中的第2B节 :

 sudo docker run -d --name orion1 --link mongodb:mongodb -p 1026:1026 fiware/orion -dbhost mongodb 

看来你错过了--link mongodb:mongodb参数(当然需要先运行一个名为mongodb的MongoDB --link mongodb:mongodb )。