0

我正在尝试在 Scotch Box VM 上设置 CouchDB(并最终使用 PouchDB)。VM 运行良好,并通过包含以下代码包括端口 5849 的端口转发:

Vagrant.configure("2") do |config|

    config.vm.box = "scotch/box-pro"
    config.vm.hostname = "scotchbox"
    config.vm.network "forwarded_port", guest: 80, host: 8080
    config.vm.network "forwarded_port", guest: 5984, host: 5984
    config.vm.network "forwarded_port", guest: 3000, host: 3000
    config.vm.network "private_network", ip: "192.168.33.10"

虚拟机运行良好。localhost:8080 将加载 PHP 主页,如果我运行节点服务器,则 localhost:3000 将加载节点脚本,但 localhost:5984 仅在从浏览器或使用 curl 从主机命令行加载时返回空响应curl: (52) Empty reply from server.

当我已经习惯vagrant ssh访问VM时,我可以按预期 使用curl localhost:5984来获取。{"couchdb":"Welcome","uuid":"9cabeb8f66947adabe9443594aa7f69c","version":"1.6.0","vendor":{"version":"15.10","name":"Ubuntu"}}

这是我一直在参考的指南: https ://pouchdb.com/guides/setup-couchdb.html

附加信息:当我转到 192.168.33.10:5984(而不是使用 localhost 端口转发)时,结果是连接被拒绝。

关于我的问题可能是什么的任何建议?我原以为是转发问题,但端口 8080 和 3000 工作正常,访问 IP:5984 不起作用,这让我感到奇怪。我还认为该服务可能没有运行,但是在 VM 上执行 ssh 并运行 curl 似乎表明它实际上正在运行。

谢谢!

4

1 回答 1

0

默认情况下,CouchDB 绑定到本地主机地址 127.0.0.1,您需要将其重新绑定到 0.0.0.0 才能从 Vagrant 框外部访问它。为此,您需要更改配置文件部分中的参数或bind_address在配置文件中添加与覆盖相同的参数。 [httpd]default.inilocal.ini

于 2017-10-25T12:10:52.763 回答