Mise à jour : Je l'ai eu pour travailler maintenant. La réponse de Jim Zajkowski m'a aidé à détecter que mon /etc/init.d/couchdb Les appels de redémarrage n'étaient pas réellement redémarrer l'instance. Après avoir tué manuellement les processus Couchdb et a lancé une nouvelle instance, elle a ramassé le changement obligatoire de la liaison.
J'ai installé Couchdb via
aptitude installation Couchdb
De mon serveur, je peux me connecter via
telnet localhost 5984
et exécuter des commandes reposantes. Lorsque j'essaie d'accéder au serveur d'une autre machine sur notre réseau ou d'une machine externe de notre réseau, je reçois un la connexion a été réinitialisée Erreur. J'ai configuré le transfert de port sur le routeur et le serveur est autrement accessible via Apache, Tomcat, SSH, etc.
Je suis nouveau à Linux/Ubuntu, donc je n'étais pas sûr s'il y avait un pare-feu par défaut bloquant la connexion, alors j'ai couru:
iptables -a entrée -P TCP --Dport 5984 -J accepter
mais ça n'a pas aidé.
Voici la décharge de l'exécution iptables -l -l -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
Je suppose que les octets montrant comme transférés pour 5984 sont dus à ma connexion localehost.
Voici la décharge de la course à pied NetStat -an | Grep 5984
tcp 0 0 127.0.0.1:5984 0.0.0.0:* LISTEN
J'ai configuré Couch.ini Pour avoir "Bintaddress = 0.0.0.0" et redémarré, de sorte qu'il devrait Écouter sur toutes les interfaces. Lorsque j'exécute "sudo /etc/init.d/couchdb stop" puis exécutez netstat, cependant, je vois toujours l'entrée ci-dessus. On dirait que Couchdb n'arrête pas du tout. Cela peut expliquer mon problème, car cela signifie que cela peut signifier que CouchDB n'a jamais réellement redémarré et n'a jamais ramassé le changement de liaison.
J'ai tué manuellement le processus Couchdb et j'ai recommencé. Maintenant, NetStat montre:
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
Je ne peux toujours pas me connecter cependant, même d'une autre machine sur le réseau local.
Que fait netstat -an | grep 5984
dire? Dis-il 127.0.0.1:5984
ou *:5984
? Si c'est 127.0.0.1
, alors Couchdb doit être réglé pour écouter toutes les interfaces.
Vous devez changer le BIND_Address dans /etc/couchdb/default.ini. Puis redémarrez le service et réessayez.
J'ai remarqué que pour que cela fonctionne, vous devez tuer manuellement le processus d'exécution d'Erlang pour une raison quelconque .ps ax | grep beam
Devrait révéler le processus Erlang, vous devriez obtenir quelque chose le long des lignes de 0:00 /usr/lib/erlang/erts
quelque part dans la sortie. Si vous tuez ce processus, puis courez /etc/init.d/couchdb restart
Le nouveau fichier de configuration sera chargé.
Si vous le modifiez à partir du panneau de configuration du futon, vous n'avez rien à faire d'autre (redémarrer le DB, etc.):
Avant de changer la valeur par défaut_Address:
peter@earth:~/$ netstat -an | grep 5984
tcp 0 0 127.0.0.1:5984 0.0.0.0:* LISTEN
Après avoir changé à 0.0.0.0:
peter@earth:~/$ netstat -an | grep 5984
tcp 0 0 0.0.0.1:5984 0.0.0.0:* LISTEN
NOTE NON GURUS: Ordinateurs qui ne peuvent pas accéder à la vôtre (normalement, que ce soit en dehors de votre réseau local) ne pourra toujours pas accéder à votre ordinateur (COUCHDB ou autre chose).
Sur la maison PC/Mac Exécutez cette commande:
ssh -L 5984:localhost:5984 YOUR-SERVER-IP-HERE
suivant ouvert dans votre navigateur localhost: 5984/_utils ... ça marche pour moi
J'ai rencontré cela, et mon problème a fini par être qu'il y avait, apparemment, Couchdb déjà installé dans mon installation d'Ubuntu. J'avais été édité les fichiers de configuration sous/etc/couchdb, mais celui qui fonctionnait était en fait tirant en réalisation de configuration/usr/local/etc/couchdb.
Le TIP-OFF était que les configurations dans/etc/Couchdb ont mentionné le canapé 0,10, mais je venais d'installer 1.0.1.