如何在Windows上启用Docker Remote API

时间:2016-11-03 09:48:01

标签: linux windows docker tcp boot2docker

我正在尝试在Windows 10主机上使用Docker Remote API。我正在使用Chrome的Postman扩展来查看我是否可以从docker remote api的端点获得结果。以下是我尝试过的端点:

GET http://192.168.99.100:4243/images/json

GET http://192.168.99.100:2376/images/json

两者都返回Connection to server 192.168.99.100 failed (The server is not responding)

经过几次搜索后,我发现Windows上没有默认启用Docker Remote API。大多数指南都是针对Ubuntu的,但我发现这个特殊的one适用于Windows。

这些是我在我的机器上执行的步骤

  1. docker-machine ssh
  2. cd / var / lib / boot2docker
  3. sudo vi profile
  4. DOCKER_HOST='H tcp://0.0.0.2376'更改为DOCKER_HOST='H tcp://0.0.0.2375'
  5. DOCKER_TLS=auto更改为DOCKER_TLS=no
  6. export DOCKER_HOST =' - H tcp://0.0.0.2375'
  7. 导出DOCKER_TLS_VERIFY = 0
  8. env | grep DOCKER
  9. docker-machine restart
  10. docker-machine env
  11. docker-machine regenerate-certs
  12. 执行上述步骤后,我再次尝试了Postman上的端点,但我仍然得到相同的结果。

    如果我错过了一步,你能提供一些帮助吗?还是我正在进行中?

    另外,回答我的一些问题。

    1. 用于Windows 2375和4243 for Linux的docker远程api端口?
    2. 适用于Windows的DOCKER_HOST和适用于Linux的DOCKER_OPTS吗?

3 个答案:

答案 0 :(得分:3)

将泊坞窗切换为windows container

得到C:\ProgramData\Docker\configdeamon.json文件中

添加"hosts": ["tcp://0.0.0.0:2376", "npipe://"]

重启docker。

发出命令:docker -H tcp://0.0.0.0:2376 ps

答案 1 :(得分:0)

Windows上默认启用远程API(请参阅ticket here)。

确实可以http:\\localhost:2375到达(测试它)。

答案 2 :(得分:0)

我遇到了同样的问题,并为此找到了快速解决方案。只需打开docker设置并启用“在TCP上公开守护进程...”复选框即可。 Docker将自动启动,问题应该得到解决。Please find the image attached for reference