无法连接到docker容器中运行的mongoDB

以下示例: https : //docs.docker.com/engine/examples/mongodb/ 当试图连接到mongoDB: mongo ip:27017 (其中ip是boot2docker ip的名称)+ docker ps的端口号: 27017 / TCP 或与-P 0.0.0.0:49155->27017/tcp 无论哪种方式,我得到以下错误: 警告:无法连接到IP:27017,原因:错误:61连接被拒绝 错误:无法连接到服务器IP:27017(IP),在src / mongo / shell / mongo.js连接尝试失败:148例外:连接失败

如何通过Docker在MongoDB上启用身份validation?

我想启动一个docker for mongodb:latest但是只允许某些用户访问某些db(s)(即启用–auth )。 没有人应该访问mongodb! 作为docker启动的一部分,我应该如何做到这一点? 顺便说一下,在启动过程中,通过使用以下命令, data directory位于主机上: -v /my/own/datadir:/data/db 。

如何知道我的docker mysql容器何时启动,mysql已准备好接受查询?

我正在部署一些不同的docker容器,mysql是第一个。 我想在数据库启动后立即运行脚本并继续构build其他容器。 该脚本一直失败,因为它试图运行时,设置MySQL(从这个官方的MySQL容器 )入口脚本,仍然在运行。 sudo docker run –name mysql -e MYSQL_ROOT_PASSWORD=MY_ROOT_PASS -p 3306:3306 -d mysql [..] wait for mysql to be ready [..] mysql -h 127.0.0.1 -P 3306 -u root –password=MY_ROOT_PASS < MY_SQL_SCRIPT.sql 是否有一种方法来等待docker容器内完成一个入口的mysql安装脚本的信号? 巴什睡眠似乎是一个不理想的解决scheme。 编辑:去这样的bash脚本。 不是最优雅和有点暴力,但作品像一个魅力。 也许有人会觉得有用。 OUTPUT="Can't connect" while [[ $OUTPUT == *"Can't connect"* ]] do OUTPUT=$(mysql -h $APP_IP -P :$APP_PORT -u yyy […]

无法从存储库下载Docker镜像

我正试图在我的笔记本电脑上创build一个群集设置。 我正在笔记本上运行swarm守护程序,并运行2个Ubuntu 14.04 VM作为docker节点。 在其中一个节点(VM)上,我可以运行swarm,并且可以连接到swarm守护进程。 我可以列出与docker信息的节点,并spwan一个contianer。 但是,当我尝试在另一个VM节点上拔取swarm映像时,出现以下错误: pensu@pensu-virtual-machine:~$ sudo docker pull swarm Pulling repository swarm FATA[0025] Get https://index.docker.io/v1/repositories/library/swarm/images: dial tcp: lookup index.docker.io on 127.0.1.1:53: read udp 127.0.1.1:53: i/o timeout 我查了一下,有人说这是一个代理问题。 但是我没有使用任何代理服务器。 以下是其他相关信息: pensu@pensu-virtual-machine:~$ sudo docker version Client version: 1.5.0 Client API version: 1.17 Go version (client): go1.4.1 Git commit (client): a8a31ef OS/Arch (client): linux/amd64 Server […]

在Docker镜像中运行jar文件

我使用java创build了一个Docker镜像,并在镜像中创build了一个jar文件。 我的Dockerfile是: FROM anapsix/alpine-java MAINTAINER myNAME COPY testprj-1.0-SNAPSHOT.jar /home/testprj-1.0-SNAPSHOT.jar RUN java -jar /home/testprj-1.0-SNAPSHOT.j 执行以下命令后 docker build -t imageName. 在控制台我看到应用程序和everthing的输出是好的。 但是,当我停止图像,我不知道如何再次运行图像? 执行以下命令时: docker run -i -t imageName java -jar /home/testprj-1.0-SNAPSHOT.jar 应用程序再次运行,但在我的Dockerfile中,我已经写了这个命令。 如何在没有这个命令的情况下运行镜像,应用程序是否自动运行

如何从VagrantconfigurationDockerfile

我如何通过外部的Dockerfile启动Docker的configuration? 我的stream浪文件目前看起来像这样 Vagrant.configure("2") do |config| config.vm.box = "precise64" config.vm.define :server_infrastructure do |t| end config.vm.provision "docker" do |d| d.pull_images "ubuntu" #how does the below work? #d.build "new-container-name" "local-docker-file-name" end end 非常感谢您的帮助

dockerjava7安装失败

我试图通过ppa(运行add-apt-repository ppa:webupd8team / java -y)在我的泊坞窗图像中安装java7,但它失败,出现此错误: returned a non-zero code: 127 以下是build议正确安装的方法,但不起作用。 我也尝试了两个ppas。 RUN apt-get install python-software-properties -y RUN add-apt-repository ppa:webupd8team/java -y #RUN add-apt-repository ppa:eugenesan/java -y RUN apt-get update RUN apt-get install oracle-java7-installer -y 这里是日志输出: Step 28 : RUN add-apt-repository ppa:webupd8team/java -y —> Running in b278761a4209 [91m/bin/sh: 1: add-apt-repository: not found [0m 所以…我需要找出哪里/如果这个命令存在于一个辅助库或什么: add-apt-repository add-apt-repository似乎是python-software-properties安装的一部分。 除了在构build的其他区域popup这些消息外,在这一步中我没有看到任何真正的错误。 […]

AWS Docker部署

我有一个自定义的docker镜像上传到ECS。 我打开了权限来尝试解决这个问题(一旦我能得到这个工作,我将再次locking它)。 我试图将docker映像部署到弹性beanstalk。 我有一个docker启用弹性beanstalk环境设置。 根据AWS文档,如果我从AWS内部拉取图像,则不需要传入证书。 所以我上传我的Dockerrun.aws.json文件并尝试安装它。 它失败,错误: 命令在实例上失败。 返回代码:1输出:无法使用ECR对“us-east-1”中的registry“434875166128”进行身份validation。 挂钩/opt/elasticbeanstalk/hooks/appdeploy/pre/03build.sh失败。 有关更多详细信息,请使用控制台或EB CLI检查/var/log/eb-activity.log。 /var/log/eb-activity.log信息没有任何用处。 这是我的Dockerrun.aws.json文件: { "AWSEBDockerrunVersion": "1", "Image": { "Name": "{id000xxxx}.dkr.ecr.us-east-1.amazonaws.com/my-repo:1.0.0", "Update": "true" }, "Ports": [ { "ContainerPort": "4000" } ], "Logging": "/var/log/app-name" } 我也尝试在S3中添加dockercf.json文件的authentication。 这对我也不起作用。 请注意,我正在使用商家帐户而不是个人帐户,因此可能会有一些未知的差异。 谢谢! 更新:我的用户现在也有完整的权限,所以不应该有任何权限明智的方式。

即使Docker容器卷未运行,它们如何工作?

只需要一个典型的数据Docker容器: FROM stackbrew/busybox:latest RUN mkdir /data VOLUME /data 现在我看到了很多这样运行的: docker run -name my-data data true true命令一运行就退出,容器也一样。 但令人惊讶的是,当你通过–volumes-from my-data连接到另一个容器时,它将继续提供音量。 我的问题是,这是如何工作的? 如何停止容器仍然允许访问它的卷?

如何在Docker容器中设置Java堆大小(Xms / Xmx)?

至于提出这个问题,Docker看起来已经足够新,没有网上的这个问题的答案。 我发现的唯一的地方就是这篇文章 ,作者说这很难,就是这样。