docker - 从外部连接到在Docker容器内运行的服务

标签 docker boot2docker

我有在docker容器(本地计算机)中运行的服务。我可以在Ambari服务配置中看到服务URL。

现在,我想使用我的本地开发环境连接到该服务。

我发现可以在容器内连接到该容器,但是当我在本地使用该URL时,连接被拒绝。

Cause: org.apache.http.conn.HttpHostConnectException: Connect to
xx.xx.xx.com:12008 [xx.xx.xx.com/195.169.98.101] failed: Connection refused

如何从外部连接到在容器内部运行的服务?
就我而言,代码在本地计算机上执行。

最佳答案

如果您的容器已将其端口映射到VM 12008端口,则需要确保在VirtualBox连接设置中已转发端口12008,正如我在“How to connect mysql workbench to running mysql inside docker?”中提到的那样

VBoxManage controlvm "boot2docker-vm" --natpf1 "tcp-port12008 ,tcp,,12008,,12008"
VBoxManage controlvm "boot2docker-vm" --natpf1 "udp-port12008 ,udp,,12008,,12008"

关于docker - 从外部连接到在Docker容器内运行的服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35017840/

相关文章:

bash - 为什么在docker-machine VM中创建文件会导致权限被拒绝?

DOCKER:无法从我的私有(private)注册表中提取

java - 是否有 docker Remote api 命令行客户端

windows - 在 Windows 容器上的 docker 上运行非常慢

Docker/Docker-compose 卷文件和共享问题

amazon-web-services - 推送到 ECR 存储库的最大数量的图像后会发生什么

Docker 工具箱 SSH 登录

redis - 无法使用 boot2docker 连接到作为容器运行的 redis

docker - Windows中拒绝docker权限

docker - 如何使用非Linux OS发行版创建Docker镜像