Jiu hong
Jiu hong

Reputation: 159

DB cannot be found in Mongo container in docker

The app (produced by docker-compose up) works as expected. But when I entered the mongo container (docker exec -it mongo) I cannot find db chatmongoose.

connectionString = 'mongodb://mongo:27017/chatmongoose'

> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB
version: '3.7'

services:
    server:
        build:
            context: ./server
            dockerfile: Dockerfile
        image: myapp-server
        container_name: myapp-node-server
        command: /usr/src/app/node_modules/.bin/nodemon server.js

        ports:
            - '5000:5000'
        links:
            - mongo
        environment:
            - NODE_ENV=development
        networks:
            - app-network
    mongo:
        container_name: mongo
        image: mongo
        volumes:
            - data-volume:/data/db
        ports:
            - '27017:27017'
        networks:
            - app-network
    client:
        build:
            context: ./client
            dockerfile: Dockerfile
        image: myapp-client
        container_name: myapp-react-client
        command: npm start
        depends_on:
            - server
        ports:
            - '3000:3000'
        networks:
            - app-network
networks:
    app-network:
        driver: bridge

volumes:
    data-volume:
    node_modules:
    web-root:
        driver: local

The data in app did work as expected but why I cannot find the db in container?

Upvotes: 0

Views: 228

Answers (1)

Mustafa Güler
Mustafa Güler

Reputation: 1014

Could you try profile. It probably only start mongo but also volume will be valid.

docker-compose --profile mongo up

mongo:
     profiles: ["mongo"]
     container_name: mongo
     image: mongo
     volumes:
        - data-volume:/data/db
     ports:
        - '27017:27017'
     networks:
        - app-network

Upvotes: 2

Related Questions