Tag: mongodb

docker-compose external_link mongo network not reachable

我有一个奇怪的情况,我无法连接到我的泊坞窗撰写我正在运行的mongo数据库。 我的撰写文件: version: '3' services: app: image: myimage:latest ports: – "8080:8080" external_links: – myname:mongo environment: – MONGO_URL=mongodb://myname:27017/test 我发现一些信息都没有解决我的问题。 即我试过了: 1) 创build一个自定义networking: docker network create mongonet 然后用–network mongonet标志启动mongo并添加组合: networks: default: external: name: mongonet 也没有什么。 我查看了我撰写的/ etc / hosts文件,并没有列出任何DNS条目。 如果我做一个docker inspect并抓住mongo知识产权,并将其添加到我的撰写,这是好的,像一个魅力的作品。 我开始像这样: docker run -d -p 27017:27017 -v ~/mongo_data:/data/db mongo 我真的很困惑,因为我相信这是一个开箱即用的东西。 奇怪,我不能使它的工作。 我已经find了内部链接的示例(vs external_link),但这不适合我,因为我有许多服务,我希望像这样运行,而不是所有的服务都应该同时运行。 我开始我的docker撰写这样的: docker-compose up […]

Docker不会启动MONGODB,并且在启动其他服务时不会出现IPAddress

我已经在serverfault.com上问过这个问题。 我也在这里问,因为我在这两个站点看到不同的问题(看起来他们有不同的数据库)。 我一直在试图从Fedorabuild立一个操作系统映像,但没有成功启动以下内容: Systemd SSHD 的RabbitMQ MongoDB的 我可以得到前3(Systemd,SSHD和RabbitMQ-Server)的工作。 我也可以让MongoDB在容器中工作。 但是,我无法让MongoDB与其他3个服务一起工作。 另外,当我尝试“dockerize”MongoDB时,IP地址不显示。 我在Dockerfile中丢失了什么? 这是我的dockerfile: FROM fedora:20 MAINTAINER “Ashfaque” <ashfaque@email.com> ENV container docker RUN yum -y update; yum clean all RUN yum -y install systemd; yum clean all; \ (cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i == systemd-tmpfiles-setup.service ] || rm -f $i; done); \ […]

bluemix docker容器绑定到mongodb('MongoError',消息:'connect ENETUNREACH')

一直在尝试将我的docker node.js应用程序连接到一个mongodb服务无济于事。 我创build了一个自由桥接应用程序($ BRIDGE_APP),没有任何战争或代码绑定到一个mongodb服务。 它运行状态良好。 不得不说,相同的代码在我的本地泊坞窗容器中正确运行。 我使用mongoose来连接到mongo。代码的唯一区别是解决mongo连接string的方式: var DB_CONNECT_STRING = 'mongodb://app:password@127.0.0.1:27017/appname'; if(custom.areWeOnBluemix() && custom.doWeHaveServices()) DB_CONNECT_STRING = custom.getMongoConnectString(); … console.log('going to connect to mongo@: ' + DB_CONNECT_STRING); var db = mongoose.createConnection(DB_CONNECT_STRING); db.on('error', console.error.bind(console, 'connection error:')); db.once('open', function (callback) { console.log('… db open !!!'); }); 我把我的形象推到bluemix没有问题: ice –local push $REGISTRY/$ORG/$CONTAINER_NAME 然后我检查envvariables: cf env $BRIDGE_APP System-Provided: { "VCAP_SERVICES": […]

Docker MongoDB – 在磁盘上添加数据库到容器

我在Windows上运行Docker,并在C:\ data \ db磁盘上有一些数据库。 我想将这个数据库添加到我的容器。 我已经尝试了很多方法来做到这一点,但失败了。 我试过了: docker run -p 27017:27017 -v //c/data/db:/data/db –name mongodb devops-mongodb 在我的dockerfile中我有: RUN mkdir -p /data/db VOLUME /data/db 但是这不会将我当前的数据库添加到容器中。 它创build一个新的/ data / db目录,并保存我添加的数据。 这里的文档https://docs.docker.com/userguide/dockervolumes/下的“挂载主机目录作为数据卷”明确告诉我执行-v // c / data / db:/ data / db,但是这个不工作。 有任何想法吗?

Docker添加额外的参数来启动

我创build了一个mongo docker实例,默认情况下它没有启用auth。 所以我为一个数据库创build了一个root用户和一个读/写用户,现在我想以auth模式重启它,通常通过在启动时传递–auth参数来完成。 是否有可能重新启动蒙戈docker实例与附加标志?

将Docker ENVvariables传递给Rails应用程序

我正在testing一个利用docker集装箱的铁路应用程序。 我试图做的是传递一个ENVvariables运行使用-e标志,如下所示: docker run -p 3000:3000 -d -e "DOCKER_HOST=$(ip -4 addr show docker0 | grep -Po 'inet \K[\d.]+')" somerepo/image:tag 。 这是我知道的,因为当我撞到容器并运行env我得到正确的variables集: $ env HOSTNAME=1641e2f6c81f GEM_HOME=/usr/local/bundle DOCKER_HOST=172.17.0.1 … 当我尝试在rails应用程序中设置mongoid.yml ,如下所示: production: clients: default: database: somerailsdb hosts: – ${DOCKER_HOST}:27017 options: options: 当我尝试获取数据库logging时,出现以下mongodb错误: App 10040 stdout: D, [2016-01-10T11:40:07.085516 #10040] DEBUG — : MONGODB | getaddrinfo: Name or service […]

使用docker与mongo和数据的好策略

我的电脑上已经有一个mongo了。 我想将其移到docker集装箱。 现在,我明白一个容器应该是不变的,我同意。 在这种情况下,我应该如何使用本地数据或将其导入到mongo容器中?

不能在一个mongdb泊坞窗内连接pymongo

所以我做了一个远程计算机上的MongoDB的docker容器192.168.0.17我用这个命令运行容器: docker run -t -i -p 27019:27019 mongodb /bin/bash 在容器内部我运行它作为用户炒锅与这些选项: mongod –bind_ip 0.0.0.0 –noauth 这里是输出(我已经创build并授予炒锅到/ data / db /): wok@91cf429cfc28:~$ mongod –bind_ip 0.0.0.0 –noauth warning: bind_ip of 0.0.0.0 is unnecessary; listens on all ips by default 2016-04-08T15:40:08.661+0000 I CONTROL [initandlisten] MongoDB starting : pid=41 port=27017 dbpath=/data/db 64-bit host=91cf429cfc28 2016-04-08T15:40:08.661+0000 I CONTROL [initandlisten] db version v3.2.4 […]

在docker-compose中运行命令

我正试图在Ubuntu 15.10的VPS机器上运行两个docker容器,并使用docker-compose这件事。 一个容器是一个mongodb服务器,另一个容器运行我的web应用程序,用node.js / sails.js写成。 我在docker-compose.yml编写了以下docker-compose.yml以便docker-compose.yml docker-compose up将运行这两个容器。 我将Web应用程序挂载到Web应用程序泊坞窗容器中的目录/host ,并且想要执行端口映射3050:1337 (host:docker)。 为了运行web应用程序,我使用了command标签并使用bash来更改目录并执行sails lift命令,但是它不起作用。 我想我的下面的脚本是错误的: MongoDB: image: mongo MyAPI: image: sailsjs-microservice:dev volumes: – /root/Code/node/My-API:/host command: bash -c "cd /host && sails lift" ports: – "3050:1337" 我感谢您的帮助

如何使用Docker Compose在容器中运行命令?

我有以下情况:我有一个使用MongoDB的Node.js应用程序,所以使用Docker Compose,我可以有两个容器:一个用于Node应用程序,另一个用于MongoDB。 现在,该应用程序必须支持以下function:可以上传一个csv文件,该文件将使用mongoimport导入到Mongo中。 使用Node,运行mongoimport很容易,因为我们有exec函数。 也就是说,这将是一个像做一样的事情: const exec = require('child_process').exec; exec('mongoimport -d database -c collection –type csv file.csv', function (error, stdout, stderr) { // Other stuff here… }); 唯一的问题是: mongoimport将不可用,因为MongoDB是在另一个容器比Node应用程序! 现在怎么解决? 我想通过exec使用SSH来运行在Mongo容器上,但我不确定。 我如何从Node应用程序运行mongoimport到Mongo容器?