Atualização: eu consegui trabalhar agora. A resposta de Jim Zajkowski me ajudou a detectar que minhas chamadas de reinicialização do /etc/init.d/couchdb não estavam realmente reiniciando a instância. Depois que eu matei manualmente os processos do CouchDB e iniciei uma nova instância, ela captou a alteração necessária no BindAddress.
Eu instalei o CouchDB via
aptitude install couchdb
No meu servidor, eu posso conectar via
telnet localhost 5984
e execute comandos RESTful. Quando tento acessar o servidor de outra máquina em nossa rede ou de uma máquina externa à nossa rede, recebo um erro A conexão foi redefinida . Configurei o encaminhamento de porta no roteador e o servidor pode ser acessado via Apache, Tomcat, SSH, etc.
Eu sou novo no Linux / Ubuntu, então não tinha certeza se havia um firewall padrão bloqueando a conexão, então executei:
iptables -A INPUT -p tcp --dport 5984 -j ACEITAR
mas não ajudou.
Aqui está o dump da execução do iptables -L -n -v
Chain INPUT (policy ACCEPT 2121K packets, 1319M bytes)
pkts bytes target prot opt in out source destination
70 3864 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:5984
9 1647 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:8080
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:8080
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 1708K packets, 1136M bytes)
pkts bytes target prot opt in out source destination
Presumo que os bytes exibidos como transferidos para 5984 sejam devidos à minha conexão localhost.
Aqui está o despejo da execução de netstat -an | grep 5984
tcp 0 0 127.0.0.1:5984 0.0.0.0:* LISTEN
Eu configurei o couch.ini para ter "BindAddress = 0.0.0.0" e reiniciei, portanto, ele deve estar ouvindo em todas as interfaces. Quando executo "sudo /etc/init.d/couchdb stop", em seguida, executo o netstat, no entanto, ainda vejo a entrada acima. Parece que o CouchDB não está realmente parando. Isso pode explicar meu problema, porque significa que pode significar que o CouchDB nunca realmente foi reiniciado e nunca recebeu a alteração BindAddress.
Eu matei o processo do CouchDB manualmente e o iniciei novamente. Agora, o netstat mostra:
tcp 0 0 127.0.0.1:5984 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:5984 127.0.0.1:35366 TIME_WAIT
Ainda não consigo conectar, mesmo de outra máquina na LAN.