Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

302
Views
Node.js CouchDB y Nano 'ocurrió un error en su conexión'

He estado buscando durante más de 2 horas tratando de encontrar ALGO que me diera algún tipo de dirección con este problema, pero simplemente no puedo encontrarlo.

Estoy usando Node.js y CouchDB con docker-compose. También estoy usando express y nano. He reducido mi archivo server.js a casi nada y sigo recibiendo esto

Error:

 /usr/src/app/node_modules/nano/lib/nano.js:137 reject(new Error('error happened in your connection')) ^ Error: error happened in your connection at responseHandler (/usr/src/app/node_modules/nano/lib/nano.js:137:16) at /usr/src/app/node_modules/nano/lib/nano.js:427:13 at processTicksAndRejections (node:internal/process/task_queues:96:5) Node.js v17.0.1

He intentado alrededor de 10 formas diferentes de diseñar la url , pero no puedo obtener ningún tipo de indicación de por qué no funcionará. Intenté usar curl -X PUT admin:admin@127.0.0.1:5984/posts/"001" -d '{"name":"Conner"} ' y se inserta sin problema.

servidor.js

 'use strict'; const express = require('express'); var nano = require('nano')('http://admin:admin@127.0.0.1:5984'); var posts = nano.use('posts'); const app = express(); const bodyParser = require("body-parser"); const cors =require('cors'); app.use(cors()); app.use(bodyParser.urlencoded({ extended: true })); const PORT = 8080; const HOST = '0.0.0.0'; async function asyncCall() { const response = await posts.insert({_id: "001"}, 'rabbit') return response } asyncCall(); app.use('/', express.static('public')); console.log('up and running'); app.listen(PORT,HOST);

Dockerfile

 FROM node:latest EXPOSE 8080 WORKDIR /usr/src/app RUN npm install express --save RUN npm install nano --save RUN npm install cors --save RUN npm install -g loadtest --save COPY server.js /usr/src/app/server.js COPY /public /usr/src/app/public CMD ["node", "server.js"]

docker-compose.yml

 version: '3' services: node1: build: ./s1 depends_on: - couchdb1 container_name: s1a4 ports: - "81:8080" couchdb1: image: couchdb:3.2.0 container_name: cdb1 ports: - "5984:5984" environment: COUCHDB_USER: admin COUCHDB_PASSWORD: admin
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Dado que CouchDB se ejecuta en su propio contenedor y no en localhost, su cadena de conexión debe apuntar al otro contenedor en lugar de 127.0.0.1 (localhost).

Dado que llamó al servicio CouchDB "couchdb1", la cadena de conexión debería ser;

 admin:admin@couchdb1:5984
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!