2017-10-24 10 views
0

스카치 박스 VM에서 CouchDB를 설정하려고합니다 (그리고 궁극적으로 PouchDB 사용). VM은 정상적으로 실행되며 아래 코드를 포함하여 포트 5849에 대한 포트 전달을 포함합니다.CouchDB on Vagrant VM (스카치 상자)

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" 

VM이 정상적으로 실행됩니다. 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에 갈 때, 결과는 거부 연결입니다.

내 문제의 제안 사항은 무엇입니까? 나는 그것이 포워딩 이슈라고 생각했지만 포트 8080과 3000은 잘 작동하고 IP에 가면 5984가 작동하지 않아 궁금합니다. 또한 서비스가 실행되고 있지 않다고 생각했지만 VM에서 ssh를 실행하고 말리는 것을 실행하면 실제로 실행 중임을 나타냅니다.

감사합니다.

답변

0

기본적으로 CouchDB는 로컬 호스트 주소 127.0.0.1에 바인딩되어 있으므로 Vagrant 상자 외부에서 액세스 할 수 있도록하려면 0.0.0.0으로 다시 바인딩해야합니다. 이를 위해 bind_addressdefault.ini 구성 파일의 [httpd] 섹션에서 변경하거나 local.ini 구성 파일에 재정의와 동일하게 추가해야합니다.