Установка Docker на Vagrant multi-machine - PullRequest
0 голосов
/ 07 февраля 2019

Я пытаюсь настроить несколько машин, используя Vagrant, и на них установлен Docker.Все отлично работает при использовании Vagrantfile вроде:

Vagrant.configure("2") do |config|
  config.vm.box = "bento/ubuntu-18.04"
  config.vm.provision "docker"

  config.vm.define :worker1 do |w1|
    w1.vm.hostname = "worker1"
  end

  config.vm.define :worker2 do |w2|
    w2.vm.hostname = "worker2"
  end
end

Однако я бы хотел использовать разные изображения на каждой из этих машин.При вложении шага подготовки Docker Docker даже не устанавливается на машины.

Vagrant.configure("2") do |config|
  config.vm.box = "bento/ubuntu-18.04"

  config.vm.define :worker1 do |w1|
    w1.vm.hostname = "worker1"
    w1.vm.provision "docker" do |w1d|
      w1d.pull_images "python"
    end
  end

  config.vm.define :worker2 do |w2|
    w2.vm.hostname = "worker2"
    w2.vm.provision "docker" do |w2d|
      w2d.pull_images "openjdk"
    end
  end
end

Я могу достичь желаемого результата с помощью обходного пути:

Vagrant.configure("2") do |config|
  config.vm.box = "bento/ubuntu-18.04"
  config.vm.provision "docker"

  config.vm.define :worker1 do |w1|
    w1.vm.hostname = "worker1"
    w1.vm.provision :shell, inline: "docker pull python"
  end

  config.vm.define :worker2 do |w2|
    w2.vm.hostname = "worker2"
    w2.vm.provision :shell, inline: "docker pull openjdk"
  end
end

Любые идеи относительнопочему рекомендуемый поставщик Docker не работает при вложении, как во втором примере?

Ubuntu 18.04 ; Бродяга 2.2.3

...