在 OSX 上,通过 boot2docker,我在 docker 容器中运行了一个 ruby on rails 应用程序。
但是,它似乎无法访问第三方 API。
下面的代码在 docker 容器之外工作,但不在内部:
response = HTTParty.get('https://api.stackexchange.com/2.2/questions?site=stackoverflow')
当从 docker 容器内部运行时,请求超时:
SocketError: getaddrinfo: Name or service not known
在这一点上,我认为问题可能出在 boot2docker 设置上,就像这样:
boot2docker ssh
ping stackexchange.com
然后它超时。
我正在使用 OSX 10.10.3、boot2docker 1.50 和 docker-compose