通过puppet安装docker ce

通过puppet安装docker ce,docker,puppet,Docker,Puppet,我试图通过puppet安装docker ce,我有几个问题 1:apt::key是否会在之后自动执行“apt get update” 2:如何使用apt:ppa模块添加docker ce? 这是通过以下方式完成的: sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable" 但是我如何使用apt::ppa来

我试图通过puppet安装docker ce,我有几个问题

1:apt::key是否会在之后自动执行“apt get update”

2:如何使用apt:ppa模块添加docker ce? 这是通过以下方式完成的:

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"
但是我如何使用apt::ppa来包括分发和发布

这是整个木偶块:

class docker {

  $prerequisites = ['apt-transport-https', 'ca-certificates', 'curl']
  package { $prerequisites: ensure => installed}

  apt::key { 'docker-ce':
    ensure    => present,
    id        => '9DC858229FC7DD38854AE2D88D81803C0EBFCD88',
    options   => 'https://download.docker.com/linux/ubuntu/gpg',
  }

  apt::ppa {''}

  package {'docker-ce': ensure  => installed}
}
编辑:

最终将apt模块与apt::source硬编码版本一起使用,因为我知道我的所有系统都将运行它

class docker {
  include apt

  $prerequisites = ['apt-transport-https', 'ca-certificates']
  package { $prerequisites: ensure => installed} ->

  apt::key { 'docker-ce':
     ensure    => present,
     id        => '9DC858229FC7DD38854AE2D88D81803C0EBFCD88',
     options   => 'https://download.docker.com/linux/ubuntu/gpg',
  } ->

  apt::source {'docker-ce':
     location  => 'https://download.docker.com/linux/ubuntu',
     release   => 'xenial'
  } ->

  exec { 'apt-get-update':
     command   => '/usr/bin/apt-get update'
  } ->

  package {'docker-ce': ensure  => installed}
}

下面是我如何安装它的:

  apt::key { '9DC858229FC7DD38854AE2D88D81803C0EBFCD88':
    source => 'https://download.docker.com/linux/ubuntu/gpg',
  } ->
  apt::source { 'docker-ce':
    architecture => 'amd64',
    location     => 'https://download.docker.com/linux/ubuntu',
    repos        => 'stable',
    release      => $::lsbdistcodename,
  } ->
  package { 'docker-ce':
    ensure  => 'latest',
    require => Exec['apt_update'],
  }

使用Puppet安装docker有一个简单的方法。也许值得一试。如果不是的话,它是开源的,你可以在Github上看到。看起来它没有安装docker ce,但我会看看他们是如何做到的,看看我是否可以从中提取一些信息。谢谢@R0MANARMYIt肯定安装了docker ce。@MattSchuchard确实安装了。我最终使用了apt::sourcefor ubuntu64的apt模块,我必须将[arch=amd64]添加到apt::source中的“location”url中,否则它一直告诉我没有找到“docker ce”包