Newer
Older
# Installs Docker repository, docker-engine, docker-compose
class ubuntu_server::docker($docker_compose_latest_version='1.8.1') {
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'],
content => 'deb [arch=amd64] http://apt.dockerproject.org/repo ubuntu-trusty main',
notify => Exec['apt-get-update'],
}
package{'lxc-docker':
ensure => purged,
before => Package['docker-engine'],
}
package{'docker-engine':
require => [Exec['docker-apt-repo'],File['/etc/apt/sources.list.d/docker.list'],Exec['apt-get-update']],
if $::docker_compose_version == undef {
}
else {
$docker_compose_version = $::docker_compose_version
if versioncmp($docker_compose_latest_version,$docker_compose_version) > 0 {
exec{'docker-compose':
command => "curl -L https://github.com/docker/compose/releases/download/${docker_compose_latest_version}/docker-compose-$(uname -s)-$(uname -m) > /usr/local/bin/docker-compose",
}
exec{'docker-compose-bash-completion':
command => "curl -L https://raw.githubusercontent.com/docker/compose/${docker_compose_latest_version}/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose",
}
file{'/usr/local/bin/docker-compose':
mode => '0750',
require => Exec['docker-compose'],
}