首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >连接到运行在Docker中的mongodb

问连接到运行在Docker中的mongodb
EN

Stack Overflow用户
提问于 2017-08-25 07:18:03
回答 1查看 4.8K关注 0票数 1

我正在使用Windows 10

我已经安装了虚拟盒

在虚拟盒中,我安装了Ubuntu,将网络设置为桥网络

我正在使用启动Docker

在Docker中,Mongodb容器运行在默认端口上。

我正在虚拟盒中的Ubuntu中做我所有的开发工作

这是我的终端日志

代码语言:javascript
复制
$ docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER        ERRORS
default   *        virtualbox   Running   tcp://192.168.99.100:2376           v17.06.0-ce


$ docker-machine env
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="C:\Users\test\.docker\machine\machines\default"
export DOCKER_MACHINE_NAME="default"
export COMPOSE_CONVERT_WINDOWS_PATHS="true"
# Run this command to configure your shell:
# eval $("C:\Program Files\Docker Toolbox\docker-machine.exe" env)


$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
77427d4fc49b        mongo               "/bin/sh -c '/usr/..."   About an hour ago   Up 45 minutes                           mongo

问题是我不知道如何连接到这个全局运行MongoDB的容器,比如从运行在虚拟盒上的Ubuntu

编辑1:

Ubuntu终端日志

代码语言:javascript
复制
test@test-VirtualBox:~$ ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:e1:c8:be brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.27/24 brd 192.168.1.255 scope global dynamic enp0s3
       valid_lft 78034sec preferred_lft 78034sec
    inet6 fe80::2ae9:9e0c:d9a3:f044/64 scope link 
       valid_lft forever preferred_lft forever
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
    link/ether 02:42:3d:79:a8:7f brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 scope global docker0
       valid_lft forever preferred_lft forever
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-25 07:42:31

您需要运行具有端口映射的mongo容器。

代码语言:javascript
复制
docker run -p 27017:27017 mongodb

然后可以使用192.168.99.100:27017进行访问。

编辑-1

如果您是从另一个VM连接它,那么请确保添加一个具有公共主机专用网络lan的适配器。在大多数情况下,这将是vboxnet1

​

​

并为您的Ubuntu配置如下网络(确保停靠VM和Ubuntu都使用相同的)

​

​

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45876216

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档