简体   繁体   中英

how to map database from couchdb container to another containers webapp in same docker-compose file

I am having one web application which is running with couchdb database. This coudb container has multiple databases from which web application need only one database. I am using docker compose to run it but web application didn't recognize database inside couchdb container by docker-compose.yml file as below

version: "2"
services:
    db:
      image: mysite/couch:latest
      ports:
       - "15984:5984"
      environment:
         DB_USER: admin
         DB_PASSWORD: password
         DB_NAME: db_new
    webapp:
      image: mysite/webapp:latest
      ports:
       - "3050:3000"
      links:
       - db
       - db:db_new

If I run docker manually as mentioned below it works fine

docker run --rm -e DB_URL=http://localip:15984/db_new -p 0.0.0.0:3050:3000

Any Ideas what I am missing in docker-compose file?

After spending lots of time on docker-compose I got the solution as below

version: "2"
services:
    db:
      image: mysite/couch:latest
      ports:
       - "15984:5984"
    webapp:
      image: mysite/webapp:latest
      ports:
       - "3050:3000"
      links:
        - db
      environment:
         DB_URL: http://admin:password@db:5984/db_new

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM