连接到在Docker中运行的mongodb

我正在使用Windows 10

我已经安装了Virtual Box

在虚拟的盒子里,我安装了Ubuntunetworking设置为Bridge Network

我正在使用Docker Toolbox for Windows启动Docker

在Docker我有Mongodb容器运行在默认端口

我正在做所有我在Ubuntu虚拟盒子里安装的开发工具

这是我的terminal日志

$ 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:

terminal日志从Ubuntu

 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 

你需要用端口映射运行你的mongo容器

 docker run -p 27017:27017 mongodb 

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

编辑-1

如果您从另一台虚拟机连接它,请确保添加一个具有通用主机networking局域网的适配器。 在大多数情况下,这将是vboxnet1

网络设置

并且为你的Ubuntu VMconfigurationnetworking如下(确保docker VM和Ubuntu VM都使用相同)

虚拟机设置