从本地主机连接到 运行 docker 个容器
Connecting to running docker containers from localhost
我刚刚在 [=31 上安装了 docker & docker machine =] os X.
我有两个 运行 容器,我想从我的终端连接到:
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5a15af29232f mysql:latest "/entrypoint.sh mysql" 28 minutes ago Up 28 minutes 0.0.0.0:3306->3306/tcp hopeful_fermi
967f240e77d1 elasticsearch "/docker-entrypoint.s" About an hour ago Up About an hour 9200/tcp, 9300/tcp jolly_swartz
我不确定如何从我的 mac os X 终端连接到 elasticsearch 和 mysql...
我已在两个容器上尝试 docker inspect
以确定 IP 地址是什么,但使用该 IP 地址连接到容器无济于事。
有人可以帮忙吗?
尝试docker exec -it 5a1 bash
进入第一个,docker exec -it 967 bash
尝试进入另一个
但请记住,您需要使用 docker-machine
的 IP 地址而不是 localhost
。
要获取它,只需键入 docker-machine ip <machineName>
。
编辑:对于您要连接的每个服务,您需要通过 docker run -d ... -p 3306:3306 ...
等映射公开端口。这样就可以像 mysql -u <user> -h 192.168.99.100 -p
一样连接 mysql 客户端。如果是 elasticsearch,你需要做 docker run -d ... -p 9200:9200 -p 9300:9300 ...
。有关详细信息,请查看 official documentation.
我刚刚在 [=31 上安装了 docker & docker machine =] os X.
我有两个 运行 容器,我想从我的终端连接到:
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5a15af29232f mysql:latest "/entrypoint.sh mysql" 28 minutes ago Up 28 minutes 0.0.0.0:3306->3306/tcp hopeful_fermi
967f240e77d1 elasticsearch "/docker-entrypoint.s" About an hour ago Up About an hour 9200/tcp, 9300/tcp jolly_swartz
我不确定如何从我的 mac os X 终端连接到 elasticsearch 和 mysql...
我已在两个容器上尝试 docker inspect
以确定 IP 地址是什么,但使用该 IP 地址连接到容器无济于事。
有人可以帮忙吗?
尝试docker exec -it 5a1 bash
进入第一个,docker exec -it 967 bash
尝试进入另一个
但请记住,您需要使用 docker-machine
的 IP 地址而不是 localhost
。
要获取它,只需键入 docker-machine ip <machineName>
。
编辑:对于您要连接的每个服务,您需要通过 docker run -d ... -p 3306:3306 ...
等映射公开端口。这样就可以像 mysql -u <user> -h 192.168.99.100 -p
一样连接 mysql 客户端。如果是 elasticsearch,你需要做 docker run -d ... -p 9200:9200 -p 9300:9300 ...
。有关详细信息,请查看 official documentation.