59 lines
1.3 KiB
Puppet
59 lines
1.3 KiB
Puppet
class platform::docker::params (
|
|
$package_name = 'docker-ce',
|
|
$http_proxy = undef,
|
|
$https_proxy = undef,
|
|
$no_proxy = undef,
|
|
) { }
|
|
|
|
class platform::docker::config
|
|
inherits ::platform::docker::params {
|
|
|
|
include ::platform::kubernetes::params
|
|
|
|
if $::platform::kubernetes::params::enabled {
|
|
|
|
if $http_proxy or $https_proxy {
|
|
file { '/etc/systemd/system/docker.service.d':
|
|
ensure => 'directory',
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => '0755',
|
|
}
|
|
-> file { '/etc/systemd/system/docker.service.d/http-proxy.conf':
|
|
ensure => present,
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => '0644',
|
|
content => template('platform/dockerproxy.conf.erb'),
|
|
}
|
|
}
|
|
|
|
Class['::platform::filesystem::docker'] ~> Class[$name]
|
|
|
|
service { 'docker':
|
|
ensure => 'running',
|
|
name => 'docker',
|
|
enable => true,
|
|
require => Package['docker']
|
|
}
|
|
-> exec { 'enable-docker':
|
|
command => '/usr/bin/systemctl enable docker.service',
|
|
}
|
|
}
|
|
}
|
|
|
|
class platform::docker::install
|
|
inherits ::platform::docker::params {
|
|
|
|
package { 'docker':
|
|
ensure => 'installed',
|
|
name => $package_name,
|
|
}
|
|
}
|
|
|
|
class platform::docker
|
|
{
|
|
include ::platform::docker::install
|
|
include ::platform::docker::config
|
|
}
|