[英]Connect to mongodb running inside Docker
I am using Windows 10 我正在使用Windows 10
I have installed Virtual Box 我已经安装了Virtual Box
In virtual Box I have installed Ubuntu with network setting as Bridge Network 在虚拟盒子中,我已经安装了Ubuntu,其网络设置为Bridge Network
I am using Docker Toolbox for Windows to Start Docker 我正在使用Windows的Docker Toolbox启动Docker
In Docker I have Mongodb container running at default port 在Docker中,我在默认端口上运行了Mongodb容器
I am doing all my development stuff inside Ubuntu installed in Virtual Box 我正在在Virtual Box中安装的Ubuntu中进行所有开发工作
Here is my Terminal Log 这是我的终端日志
$ 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
Issue is I dont know how to Connect to this container running MongoDB globally say from Ubuntu running on Virtual Box 问题是我不知道如何从在Virtual Box上运行的Ubuntu全局连接到此运行MongoDB的容器
Edit 1: 编辑1:
Terminal Log from Ubuntu 来自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
You need to run your mongo container with port mappings 您需要使用端口映射运行mongo容器
docker run -p 27017:27017 mongodb
And then you can access using 192.168.99.100:27017
. 然后您可以使用192.168.99.100:27017
进行访问。
Edit-1 编辑-1
If you are connect it from another VM then make sure to add an adapter with common Host-only network lan. 如果您是从另一个VM连接的,请确保添加带有公用的仅主机网络局域网的适配器。 In most cases this would vboxnet1
在大多数情况下,这将是vboxnet1
And configure the network as below for your Ubuntu VM (make sure both docker VM and Ubuntu VM use the same) 并为您的Ubuntu VM配置以下网络(确保docker VM和Ubuntu VM使用相同的网络)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.