itamae-plugin-recipe-docker 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +9 -0
- data/.travis.yml +4 -0
- data/Gemfile +6 -0
- data/README.md +47 -0
- data/Rakefile +1 -0
- data/bin/console +14 -0
- data/bin/setup +7 -0
- data/itamae-plugin-recipe-docker.gemspec +26 -0
- data/lib/itamae/plugin/recipe/docker/files/docker.repo +6 -0
- data/lib/itamae/plugin/recipe/docker/install.rb +86 -0
- data/lib/itamae/plugin/recipe/docker/version.rb +9 -0
- data/lib/itamae/plugin/recipe/docker.rb +11 -0
- metadata +112 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: d7621dc4346ebd13995e2bbb7f8fc52c379d7d8f
|
4
|
+
data.tar.gz: 71594b5d92343fc85fd6187179ed660af1cad247
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 7e60e5acdd5f02c1e291f0ecd9a5c03539d5fc8eb56198384519d9c2f1393e6debf685c0a31b1aea5092507582714eddb8eebe4849d22193ef179818f15b7e8d
|
7
|
+
data.tar.gz: 4b19fe1eb9c83b19501e26ef5f0d791a70ff086456543d2ce011a378cb2d371b06f61d565ca57203b205608f3c0efed013fd2dff63ce3c670b533c10f406e3d8
|
data/.gitignore
ADDED
data/.travis.yml
ADDED
data/Gemfile
ADDED
data/README.md
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
# Itamae::Plugin::Recipe::Docker
|
2
|
+
|
3
|
+
[Itamae](https://github.com/itamae-kitchen/itamae) plugin to install Docker
|
4
|
+
in the way described in https://docs.docker.com/installation.
|
5
|
+
|
6
|
+
## Supported Platforms
|
7
|
+
|
8
|
+
- Arch Linux
|
9
|
+
- CentOS
|
10
|
+
- Debian
|
11
|
+
- Fedora
|
12
|
+
- Gentoo
|
13
|
+
- OSX
|
14
|
+
- Red Hat Enterprise Linux
|
15
|
+
- Ubuntu
|
16
|
+
|
17
|
+
## Installation
|
18
|
+
|
19
|
+
Add this line to your application's Gemfile:
|
20
|
+
|
21
|
+
```ruby
|
22
|
+
gem 'itamae-plugin-recipe-docker'
|
23
|
+
```
|
24
|
+
|
25
|
+
And then execute:
|
26
|
+
|
27
|
+
$ bundle
|
28
|
+
|
29
|
+
Or install it yourself as:
|
30
|
+
|
31
|
+
$ gem install itamae-plugin-recipe-docker
|
32
|
+
|
33
|
+
## Usage
|
34
|
+
|
35
|
+
Write a following line to your itamae recipe.
|
36
|
+
|
37
|
+
```rb
|
38
|
+
# Install Docker, start it and ensure it starts on boot.
|
39
|
+
include_recipe "docker::install"
|
40
|
+
```
|
41
|
+
|
42
|
+
NOTE: Some versions of **Debian and Ubuntu reboot**.
|
43
|
+
And you should apply the recipe again after the reboot.
|
44
|
+
|
45
|
+
## License
|
46
|
+
|
47
|
+
MIT License
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
data/bin/console
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require "bundler/setup"
|
4
|
+
require "itamae/plugin/recipe/docker"
|
5
|
+
|
6
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
7
|
+
# with your gem easier. You can also use a different console, if you like.
|
8
|
+
|
9
|
+
# (If you use this, don't forget to add pry to your Gemfile!)
|
10
|
+
# require "pry"
|
11
|
+
# Pry.start
|
12
|
+
|
13
|
+
require "irb"
|
14
|
+
IRB.start
|
data/bin/setup
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'itamae/plugin/recipe/docker/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "itamae-plugin-recipe-docker"
|
8
|
+
spec.version = Itamae::Plugin::Recipe::Docker::VERSION
|
9
|
+
spec.authors = ["Takashi Kokubun"]
|
10
|
+
spec.email = ["takashikkbn@gmail.com"]
|
11
|
+
|
12
|
+
spec.summary = %q{Itamae recipe plugin to install Docker.}
|
13
|
+
spec.description = %q{Itamae recipe plugin to install Docker.}
|
14
|
+
spec.homepage = "https://github.com/k0kubun/itamae-plugin-recipe-docker"
|
15
|
+
|
16
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
17
|
+
spec.bindir = "exe"
|
18
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
19
|
+
spec.require_paths = ["lib"]
|
20
|
+
|
21
|
+
spec.add_dependency "itamae", ">= 1.6"
|
22
|
+
|
23
|
+
spec.add_development_dependency "bundler", "~> 1.10"
|
24
|
+
spec.add_development_dependency "itamae-plugin-resource-cask"
|
25
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
26
|
+
end
|
@@ -0,0 +1,86 @@
|
|
1
|
+
# All steps are interpretation of:
|
2
|
+
# https://docs.docker.com/installation
|
3
|
+
|
4
|
+
case node[:platform]
|
5
|
+
when 'arch'
|
6
|
+
execute 'pacman -Syy' do
|
7
|
+
not_if 'which docker'
|
8
|
+
end
|
9
|
+
|
10
|
+
package 'bridge-utils'
|
11
|
+
package 'device-mapper'
|
12
|
+
package 'iproute2'
|
13
|
+
package 'lxc'
|
14
|
+
package 'sqlite'
|
15
|
+
|
16
|
+
package 'docker'
|
17
|
+
|
18
|
+
when 'darwin'
|
19
|
+
begin
|
20
|
+
require 'itamae/plugin/resource/cask'
|
21
|
+
rescue LoadError
|
22
|
+
abort '"itamae-plugin-resource-cask" gem is required for darwin. Please add it to Gemfile or gem install it.'
|
23
|
+
end
|
24
|
+
|
25
|
+
execute '/usr/local/bin/brew update' do
|
26
|
+
not_if 'which docker'
|
27
|
+
end
|
28
|
+
|
29
|
+
cask 'dockertoolbox'
|
30
|
+
|
31
|
+
when 'debian'
|
32
|
+
execute 'echo "deb http://http.debian.net/debian wheezy-backports main" >> /etc/apt/sources.list' do
|
33
|
+
not_if 'cat /etc/apt/sources.list | grep wheezy-backports'
|
34
|
+
end
|
35
|
+
|
36
|
+
execute 'apt-get install linux-image-amd64 -t wheezy-backports && reboot' do
|
37
|
+
not_if 'dpkg -l | grep -q linux-image-amd64'
|
38
|
+
end
|
39
|
+
|
40
|
+
execute 'apt-get update' do
|
41
|
+
not_if 'which docker'
|
42
|
+
end
|
43
|
+
|
44
|
+
execute 'curl -sSL https://get.docker.com/ | sh' do
|
45
|
+
not_if 'which docker'
|
46
|
+
end
|
47
|
+
|
48
|
+
when 'fedora', 'redhat' # and centos
|
49
|
+
execute 'yum update -y' do
|
50
|
+
not_if 'which docker'
|
51
|
+
end
|
52
|
+
|
53
|
+
remote_file '/etc/yum.repos.d/docker.repo' do
|
54
|
+
source 'files/docker.repo'
|
55
|
+
end
|
56
|
+
|
57
|
+
package 'docker-engine'
|
58
|
+
|
59
|
+
when 'gentoo'
|
60
|
+
execute 'emerge -av app-emulation/docker' do
|
61
|
+
not_if 'which docker'
|
62
|
+
end
|
63
|
+
|
64
|
+
when 'ubuntu'
|
65
|
+
execute 'apt-get install linux-image-generic-lts-trusty && reboot' do
|
66
|
+
only_if 'cat /etc/lsb_release | grep -q DISTRIB_RELEASE=12 && dpkg -l | ! (grep -q linux-image-generic-lts-trusty)'
|
67
|
+
end
|
68
|
+
|
69
|
+
execute 'apt-get update' do
|
70
|
+
not_if 'which docker'
|
71
|
+
end
|
72
|
+
|
73
|
+
package 'curl'
|
74
|
+
execute 'curl -sSL https://get.docker.com/ | sh' do
|
75
|
+
not_if 'which docker'
|
76
|
+
end
|
77
|
+
|
78
|
+
else
|
79
|
+
raise node[:platform]
|
80
|
+
end
|
81
|
+
|
82
|
+
if node[:platform] != 'darwin'
|
83
|
+
service 'docker' do
|
84
|
+
action [:enable, :start]
|
85
|
+
end
|
86
|
+
end
|
metadata
ADDED
@@ -0,0 +1,112 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: itamae-plugin-recipe-docker
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Takashi Kokubun
|
8
|
+
autorequire:
|
9
|
+
bindir: exe
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-09-25 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: itamae
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.6'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.6'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: bundler
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.10'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '1.10'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: itamae-plugin-resource-cask
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rake
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '10.0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '10.0'
|
69
|
+
description: Itamae recipe plugin to install Docker.
|
70
|
+
email:
|
71
|
+
- takashikkbn@gmail.com
|
72
|
+
executables: []
|
73
|
+
extensions: []
|
74
|
+
extra_rdoc_files: []
|
75
|
+
files:
|
76
|
+
- ".gitignore"
|
77
|
+
- ".travis.yml"
|
78
|
+
- Gemfile
|
79
|
+
- README.md
|
80
|
+
- Rakefile
|
81
|
+
- bin/console
|
82
|
+
- bin/setup
|
83
|
+
- itamae-plugin-recipe-docker.gemspec
|
84
|
+
- lib/itamae/plugin/recipe/docker.rb
|
85
|
+
- lib/itamae/plugin/recipe/docker/files/docker.repo
|
86
|
+
- lib/itamae/plugin/recipe/docker/install.rb
|
87
|
+
- lib/itamae/plugin/recipe/docker/version.rb
|
88
|
+
homepage: https://github.com/k0kubun/itamae-plugin-recipe-docker
|
89
|
+
licenses: []
|
90
|
+
metadata: {}
|
91
|
+
post_install_message:
|
92
|
+
rdoc_options: []
|
93
|
+
require_paths:
|
94
|
+
- lib
|
95
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
96
|
+
requirements:
|
97
|
+
- - ">="
|
98
|
+
- !ruby/object:Gem::Version
|
99
|
+
version: '0'
|
100
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
101
|
+
requirements:
|
102
|
+
- - ">="
|
103
|
+
- !ruby/object:Gem::Version
|
104
|
+
version: '0'
|
105
|
+
requirements: []
|
106
|
+
rubyforge_project:
|
107
|
+
rubygems_version: 2.5.0
|
108
|
+
signing_key:
|
109
|
+
specification_version: 4
|
110
|
+
summary: Itamae recipe plugin to install Docker.
|
111
|
+
test_files: []
|
112
|
+
has_rdoc:
|