使用 docker-machine 创建 DigitalOcean 液滴时出错
Error creating DigitalOcean droplet using docker-machine
不确定是 DigitalOcean 问题还是 docker-machine
但我在尝试在 DO
上创建 Droplet 时反复遇到此错误
$ docker-machine create --driver digitalocean --digitalocean-access-token=$TOKEN --digitalocean-region=sgp1 --digitalocean-image=ubuntu-14-04-x64 --digitalocean-size "1gb" staging
Running pre-create checks...
Creating machine...
(staging) Creating SSH key...
(staging) Creating Digital Ocean droplet...
(staging) Waiting for IP address to be assigned to the Droplet...
Waiting for machine to be running, this may take a few minutes...
Detecting operating system of created instance...
Waiting for SSH to be available...
Detecting the provisioner...
Provisioning with ubuntu(upstart)...
Installing Docker...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Error creating machine: Error running provisioning: Get https://api.digitalocean.com/v2/droplets/17900941: dial tcp: lookup api.digitalocean.com on 127.0.1.1:53: read udp 127.0.0.1:40376->127.0.1.1:53: i/o timeout
我在 Ubuntu 14.04
上使用以下 docker 软件包
$ docker-machine version
docker-machine version 0.7.0, build a650a40
$ docker version
Client:
Version: 1.11.2
API version: 1.23
Go version: go1.5.4
Git commit: b9f10c9
Built: Wed Jun 1 21:47:50 2016
OS/Arch: linux/amd64
Server:
Version: 1.11.1
API version: 1.23
Go version: go1.5.4
Git commit: 5604cbe
Built: Wed Apr 27 00:34:20 2016
OS/Arch: linux/amd64
错误是:read udp 127.0.0.1:40376->127.0.1.1:53: i/o timeout
它似乎在尝试使用 localhost 作为名称服务器,但没有 DNS 服务器 运行。
您的 /etc/resolv.conf
文件是什么样的?
解决此问题的两种方法:在本地机器上启动 DNS 服务器,或者更好的方法是在该文件中修复 DNS 服务器设置并使用例如8.8.8.8
作为名称服务器。
不是 100% 确定,但我解决了以下问题。
我在 virtualbox 机器上开发,我 运行 开始工作时的命令
eval "$(docker-machine env local)"
所以我的 docker-machine env
被设置为一些变量,因此在同一个终端中的 运行 docker-machine create
导致了 DNS 解析问题。
只是 启动了一个新终端 并且能够毫无问题地创建 DigitalOcean 液滴。
不确定是 DigitalOcean 问题还是 docker-machine
但我在尝试在 DO
$ docker-machine create --driver digitalocean --digitalocean-access-token=$TOKEN --digitalocean-region=sgp1 --digitalocean-image=ubuntu-14-04-x64 --digitalocean-size "1gb" staging
Running pre-create checks...
Creating machine...
(staging) Creating SSH key...
(staging) Creating Digital Ocean droplet...
(staging) Waiting for IP address to be assigned to the Droplet...
Waiting for machine to be running, this may take a few minutes...
Detecting operating system of created instance...
Waiting for SSH to be available...
Detecting the provisioner...
Provisioning with ubuntu(upstart)...
Installing Docker...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Error creating machine: Error running provisioning: Get https://api.digitalocean.com/v2/droplets/17900941: dial tcp: lookup api.digitalocean.com on 127.0.1.1:53: read udp 127.0.0.1:40376->127.0.1.1:53: i/o timeout
我在 Ubuntu 14.04
上使用以下 docker 软件包$ docker-machine version
docker-machine version 0.7.0, build a650a40
$ docker version
Client:
Version: 1.11.2
API version: 1.23
Go version: go1.5.4
Git commit: b9f10c9
Built: Wed Jun 1 21:47:50 2016
OS/Arch: linux/amd64
Server:
Version: 1.11.1
API version: 1.23
Go version: go1.5.4
Git commit: 5604cbe
Built: Wed Apr 27 00:34:20 2016
OS/Arch: linux/amd64
错误是:read udp 127.0.0.1:40376->127.0.1.1:53: i/o timeout
它似乎在尝试使用 localhost 作为名称服务器,但没有 DNS 服务器 运行。
您的 /etc/resolv.conf
文件是什么样的?
解决此问题的两种方法:在本地机器上启动 DNS 服务器,或者更好的方法是在该文件中修复 DNS 服务器设置并使用例如8.8.8.8
作为名称服务器。
不是 100% 确定,但我解决了以下问题。 我在 virtualbox 机器上开发,我 运行 开始工作时的命令
eval "$(docker-machine env local)"
所以我的 docker-machine env
被设置为一些变量,因此在同一个终端中的 运行 docker-machine create
导致了 DNS 解析问题。
只是 启动了一个新终端 并且能够毫无问题地创建 DigitalOcean 液滴。