Tag: mongodb

使用docker-compose在音量上保存mongodb

在我的项目中,我有几个由docker-composepipe理的容器。 我想从mongoDB存储在持久卷上的数据。 MongoDB似乎将数据存储在/ data / db中,但文件不会传输到我的主机文件系统,并且在重build容器后它们将消失。 这是我的docker-composeconfiguration文件: 版本:'2' 服务: D b: 图片:mongo:最新的 卷: – “db-data:/ data / db” 端口: – “27017:27017” networking: – 麋鹿 网站: 构build:./app 环境: – WAIT_COMMAND = 1 端口: – “3000:3000” networking: – 麋鹿 依赖于取决于: – D b networking: 麋鹿: 司机:桥 卷: DB-数据:

如何使用docker与mongo来实现复制和打开身份validation

我想用docker运行一个mongodb,同时,mongo configure文件使用我自己定义的configuration文件来存档复制和开放authentication。 扫描一些文件,但不能解决问题。 有任何想法吗?

mongodb限制服务器内存消耗

我在kubernetes平台上testing运行monbodb,我可以限制正在运行的容器使用的资源。 假设我将内存限制设置为256Mb。 问题是,例如,当使备份内存消耗增加到极限并且容器被kubernetes重新启动时。 所以问题是有没有一种方法来限制我的情况下的Mongodb内存消耗,以避免由于平台设置的内存限制而造成粉碎。 我当然可以增加限制,但是我对主要解决scheme感兴趣,并且希望更好地理解这个过程,因为我现在不知道mongodb和container os如何消耗内存。 是否有可能调整mongodb /底层的Linux操作系统在现有的限制内工作。

Dockerconfiguration在运行时编辑节点代码

我有一个简单的MEAN应用程序,我想运行多次,唯一的问题是我不希望应用程序的每个实例指向同一个数据库。 为了在Docker中解决这个问题,我将节点代码和MongoDB放在同一个容器中。 该代码引用特定的数据库,但不重要,因为每个容器都有自己的内部数据库服务器。 显然这是浪费,而不是最佳做法,所以我正在寻找替代解决scheme。 理想情况下,我想用一个Node实例保留一个Docker镜像,我知道我可以用两个不同的环境variables两次重buildDocker镜像,但这并不能很好地扩展。 我以为我可以使用Dockernetworking来引用一个数据库服务器容器,然后为每个包含我的节点代码的容器,将入口点作为自定义脚本,在启动节点服务器之前设置一个作为环境variables传递给它的参数。 这样,每当我从该映像运行一个容器,我传递一个新的数据库名称作为节点代码将读取的参数。 这样我就可以从一个映像创build无限容器,所有这些容器都具有唯一的数据库,但指向相同的数据库服务器 我不确定这是否是最好的方式,如果有任何围绕这一点的最佳做法。 干杯

如何访问nodeJS应用程序中的docker ENVvariables

我正在使用这个Dockerfile: FROM node:8.4.0 COPY . / ENV MONGO_URL=mongodb://mongo-container/data ENV PORT=80 EXPOSE 80 CMD node /index.js 在index.js文件中,我想检查ENVvariables。 由于Docker镜像在生产环境中使用,如果ENVvariables未设置,我将使用开发环境运行该应用程序。 类似的东西: index.js const mongoUrl = ENV.MONGO_URL || 'mongodb://localhost:3001' 运行Docker镜像应该使用高效的mongoDB,在本地运行应该使用localhost DB

docker集装箱内的种子mongodb

我知道有一些伎俩像使用一个单独的容器来播种真实的容器,就像在这个答案中一样 。 我喜欢这种方法,但是我想知道一旦容器启动,我是否可以做到这一点。 简单地创build一个Dockerfile。 以前面的答案为出发点,我尝试了各种解决scheme,这是一个: FROM mongo:3.0.15 COPY ./init.json /init.json CMD (mongod &) && (sleep 70 && mongoimport -v –db reach-engine –collection MyDummyCollection –type json –file /init.json –jsonArray) EXPOSE 27017 唉这个解决scheme它不是优雅的,也不是工作原因:因为mongod在后台,尽快mongoimport完成容器停止,所以即使导入成功完全unusefull。 首先, 睡眠70是非常糟糕的,因为如果mongod需要超过70秒的时间,会不会发生什么情况。 想法?

关于OpenLRW部署到mongo docker实例的exception

解决了: 我必须运行泊坞窗图像没有 – 真… $ docker run -ti –rm -p 30000:27017 -v /srv/mongo:/data/db -e MONGOD_OPTIONS='–nojournal –smallfiles –noprealloc' arkadi/mongodb /sbin/my_init — bash -l 我有一个需求来实现一个学习logging存储(LRS)能够使用java或scala将数据保存到cassandra实例中。 我已经find了这个项目, https://github.com/Apereo-Learning-Analytics-Initiative/OpenLRW它使用mongo 2.6作为主后端,它是用java8和spring-boot编写的。 它看起来是一个很好的起点,我只需要将cassandra集成为新的依赖关系,构build一些连接器,但是当我尝试第一次运行时,我收到一个exception: Caused by: com.mongodb.MongoQueryException: Query failed with error code 13 and error message 'not authorized for query on test.tenant' on server 172.17.0.3:27017 at com.mongodb.connection.ProtocolHelper.getQueryFailureException(ProtocolHelper.java:131) at com.mongodb.connection.QueryProtocol.execute(QueryProtocol.java:303) at com.mongodb.connection.QueryProtocol.execute(QueryProtocol.java:54) at […]

docker mongoDB实例的Mongodump转换为单个时间戳文件

我正在通过mongo_db -compose做一个mongoDb docker实例( mongo_db )的备份转储( mongo_db感谢Matt的那个片段): version: "3" services: mongo_db_backup: image: 'mongo:3.4' volumes: – '/backup:/backup' command: | mongodump –host mongo_db –out /backup/ –db specific 执行命令 $ docker-compose run mongo_db_backup 给我所有的specific数据库的集合,并将它们存储在/backup/specific 。 是否有可能只获得一个单一的(压缩)转储文件,这是命名为当前时间? 我正在使用–out来获取文件夹中的文件。 文档说我不能使用–archive与–out一起–out 。 进一步我需要使用一个envvariables来设置归档输出。 像这样的东西: mongo_db_backup: image: 'mongo:3.4' volumes: – '/backup:/backup' command: – sh – -c – | mongodump –host mongo_db –gzip –db […]

用mongodb,node和postman使用docker-compose的正确方法是什么?

我知道这个问题已经被问到过,但是我已经阅读了很多答案,做了大量的search,并且似乎无法弄清楚发生了什么。 我想要使​​用节点和使用docker的mongodb来制作待办事项列表应用程序。 我有一个像这样的docker-compose文件 local: image: local ports: – "3000:3000" volumes: – ./:/project links: – mongo # runs nodemon server.js entrypoint: ["npm", "run", "start"] mongo: image: mongo:latest ports: – "27017:27017" volumes: – ./data/db:/data/db entrypoint: ["mongod", "–port", "27017"] 我非常小心地确保我连接mongoose,就像这样mongoose.createConnection('mongodb://mongo:27017'); 而不是本地主机。 但是,当我尝试POST到我的/任务路线邮递员没有任何反应。 整个server.js文件是 const express = require('express'); const app = express(); const port = process.env.PORT || 3000; const […]

mongoimport Docker失败:连接到数据库服务器的错误:无法访问服务器

我正在尝试使用MongoDB创build一个Docker容器并将数据导入到它。 我已经尝试使用下面的dockerfile: FROM mongo # This will be created if it doesn't exist WORKDIR /app/data/ # Copy dependency definitions COPY mydata.csv . ENTRYPOINT mongod # Import data RUN mongoimport –host=127.0.0.1 -d mydb -c reports –type csv –file mydata.csv –headerline 我得到以下错误: Failed: error connecting to the db server: no reachable servers 有什么build议么? 谢谢!