Intenté durante mucho tiempo montar mongo db en mi almacenamiento local, pero el comentario del código (# - ./database:/data/db) no se puede montar correctamente si quiero inicializar db al mismo tiempo. Luego traté de crear un volumen como se muestra ahora (cree una sección de volúmenes por separado). y funciona. ¿Sabes la diferencia y por qué? ¿podrías señalarlo amablemente? Gracias por adelantado.
version: '3.5' services: mongodb: image: mongo container_name: mongodb restart: unless-stopped ports: - 27017:27017 environment: - MONGO_INITDB_ROOT_USERNAME=root - MONGO_INITDB_ROOT_PASSWORD=root volumes: - ./docker-entrypoint-initdb.d/mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro - ./database:/data/db # not work mongo-express: image: mongo-express container_name: mongo-express restart: unless-stopped ports: - 8081:8081 environment: - ME_CONFIG_MONGODB_ADMINUSERNAME=root - ME_CONFIG_MONGODB_ADMINPASSWORD=root - ME_CONFIG_MONGODB_SERVER=mongodb - ME_CONFIG_MONGODB_ENABLE_ADMIN=true - ME_CONFIG_BASICAUTH_USERNAME=xhp - ME_CONFIG_BASICAUTH_PASSWORD=xhp depends_on: - mongodb version: '3.5' services: mongodb: image: mongo container_name: mongodb restart: unless-stopped ports: - 27017:27017 environment: - MONGO_INITDB_ROOT_USERNAME=root - MONGO_INITDB_ROOT_PASSWORD=root volumes: - ./docker-entrypoint-initdb.d/mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro - mongodb:/data/db # - ./database:/data/db not work mongo-express: image: mongo-express container_name: mongo-express restart: unless-stopped ports: - 8081:8081 environment: - ME_CONFIG_MONGODB_ADMINUSERNAME=root - ME_CONFIG_MONGODB_ADMINPASSWORD=root - ME_CONFIG_MONGODB_SERVER=mongodb - ME_CONFIG_MONGODB_ENABLE_ADMIN=true - ME_CONFIG_BASICAUTH_USERNAME=xhp - ME_CONFIG_BASICAUTH_PASSWORD=xhp depends_on: - mongodb volumes: mongodb:La diferencia da como resultado diferentes directorios locales. Mi problema debería resolverse eliminando el volumen anterior y actualizándolo.