Newer
Older
class ubuntu_server::docker {
File{
owner => 'root',
group => 'root',
mode => 644,
}
Exec{
path => $path,
}
exec{'docker-apt-repo':
command => "apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D",
unless => "apt-key list | grep -q 2C52609D",
notify => Exec['apt-get update'],
}
command => 'apt-get update',
}
file{'/etc/apt/sources.list.d/docker.list':
ensure => present,
content => "deb https://apt.dockerproject.org/repo ubuntu-trusty main",
notify => Exec['apt-get update'],
}
package{'lxc-docker':
ensure => purged,
before => Package['docker-engine'],
}
package{'docker-engine':
ensure => present,
require => [Exec['docker-apt-repo'],File['/etc/apt/sources.list.d/docker.list'],Exec['ubuntu_server::docker::apt-get-update']],
}
service{'docker':
ensure => running,
require => Package['docker-engine'],
}
exec{'docker-compose':
command => 'curl -L https://github.com/docker/compose/releases/download/1.6.2/docker-compose-$(uname -s)-$(uname -m) > /usr/local/bin/docker-compose',
creates => '/usr/local/bin/docker-compose',
}
file{'/usr/local/bin/docker-compose':
mode => 750,
require => Exec['docker-compose'],
}
}