docker-machine使用digitalocean驱动程序创建,Ubuntu 16.04 x64失败

时间:2016-05-17 18:03:13

标签: docker digital-ocean ubuntu-16.04

我正在尝试在Digital Ocean上创建一个docker机器,但是使用16.04 LTS而不是默认的15.10。 do-access-token文件包含我的令牌。

这是脚本(create-do):

#!/usr/bin/env bash
# Creates a digital-ocean server with Ubuntu 16.04 instead of the default
if [ "$1" != "" ]; then
echo "Creating: " $1
docker-machine                                          \
  create                                                \
  --driver digitalocean                                 \
  --digitalocean-access-token=`cat do-access-token`   \
  --digitalocean-image=ubuntu-16-04-x64             \
  --digitalocean-ipv6=true                          \
  $1
else
  echo "Must have server name!"
fi

当我像这样运行脚本时:

$ ./create-do ps-server

它成功地在Digital Ocean分配机器,然后用这个来解决:

Creating:  ps-server
Running pre-create checks...
Creating machine...
(ps-server) Creating SSH key...
(ps-server) Creating Digital Ocean droplet...
(ps-server) 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(systemd)...
Error creating machine: Error running provisioning: Something went wrong 
running an SSH command!
command : sudo apt-get update
err     : exit status 100
output  : Reading package lists...
E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)
E: Unable to lock directory /var/lib/apt/lists/

机器正在运行,但由于SSH密钥在出现问题之前显然未设置,因此我无法访问它。

之前有人见过这个和/或有过解决方法吗?

2 个答案:

答案 0 :(得分:1)

更新:2016年5月21日 今天早上再次破坏同样的错误。尝试了4次,每次都失败了。

更新:2016年5月20日

根据Digital Ocean的支持,由于他们的Ubuntu 16.04图像存在问题现已得到纠正,我已经确认现在可以使用了。

相关GitHub问题(尚未关闭):

https://github.com/docker/machine/issues/3358

答案 1 :(得分:0)

这对我有用:

docker-machine provision your-node

我从这里采取了这个解决方案:https://github.com/docker/machine/issues/3358

我希望这有帮助!