ventriloquist 0.3.2 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (83) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -1
  3. data/CHANGELOG.md +47 -2
  4. data/Gemfile +2 -1
  5. data/Gemfile.lock +36 -28
  6. data/README.md +116 -41
  7. data/base_box/README.md +3 -0
  8. data/base_box/Vagrantfile +66 -0
  9. data/development/Vagrantfile +32 -11
  10. data/lib/ventriloquist/cap/platforms.rb +55 -0
  11. data/lib/ventriloquist/cap/{debian → platforms/debian}/elixir_install.rb +1 -0
  12. data/lib/ventriloquist/cap/{debian → platforms/debian}/erlang_install.rb +0 -0
  13. data/lib/ventriloquist/cap/{debian → platforms/debian}/go_install.rb +1 -1
  14. data/lib/ventriloquist/cap/{debian → platforms/debian}/phantomjs_install.rb +1 -1
  15. data/lib/ventriloquist/cap/{debian → platforms/debian}/python.rb +1 -0
  16. data/lib/ventriloquist/cap/{linux → platforms/linux}/nvm_install.rb +0 -0
  17. data/lib/ventriloquist/cap/{linux → platforms/linux}/nvm_install_nodejs.rb +0 -0
  18. data/lib/ventriloquist/cap/platforms/linux/rvm_install.rb +17 -0
  19. data/lib/ventriloquist/cap/{linux → platforms/linux}/rvm_install_ruby.rb +2 -3
  20. data/lib/ventriloquist/cap/services.rb +40 -0
  21. data/lib/ventriloquist/cap/{debian → services/debian}/mysql_install_client.rb +1 -1
  22. data/lib/ventriloquist/cap/{debian → services/debian}/mysql_install_headers.rb +1 -1
  23. data/lib/ventriloquist/cap/{debian → services/debian}/pg_install_client.rb +1 -1
  24. data/lib/ventriloquist/cap/{debian → services/debian}/pg_install_headers.rb +1 -1
  25. data/lib/ventriloquist/cap/{debian → services/debian}/ventriloquist_containers_upstart.rb +0 -0
  26. data/lib/ventriloquist/cap/{linux → services/linux}/mysql_configure_client.rb +0 -0
  27. data/lib/ventriloquist/cap/{linux → services/linux}/pg_export_pghost.rb +0 -0
  28. data/lib/ventriloquist/cap/utils.rb +40 -0
  29. data/lib/ventriloquist/cap/utils/debian/git_install.rb +13 -0
  30. data/lib/ventriloquist/cap/utils/debian/install_build_tools.rb +13 -0
  31. data/lib/ventriloquist/cap/utils/debian/install_packages.rb +47 -0
  32. data/lib/ventriloquist/cap/utils/debian/mercurial_install.rb +13 -0
  33. data/lib/ventriloquist/cap/utils/linux/download.rb +39 -0
  34. data/lib/ventriloquist/cap/{linux → utils/linux}/make.rb +0 -0
  35. data/lib/ventriloquist/cap/{linux → utils/linux}/untar.rb +0 -0
  36. data/lib/ventriloquist/config.rb +6 -3
  37. data/lib/ventriloquist/platforms/elixir.rb +1 -1
  38. data/lib/ventriloquist/platforms/go.rb +1 -1
  39. data/lib/ventriloquist/platforms/nodejs.rb +1 -0
  40. data/lib/ventriloquist/platforms/phantomjs.rb +1 -1
  41. data/lib/ventriloquist/platforms/ruby.rb +1 -0
  42. data/lib/ventriloquist/plugin.rb +3 -114
  43. data/lib/ventriloquist/provisioner.rb +12 -1
  44. data/lib/ventriloquist/service.rb +14 -7
  45. data/lib/ventriloquist/services/elastic_search.rb +12 -0
  46. data/lib/ventriloquist/services/mail_catcher.rb +12 -0
  47. data/lib/ventriloquist/services/memcached.rb +12 -0
  48. data/lib/ventriloquist/services/mysql.rb +5 -0
  49. data/lib/ventriloquist/services/postgresql.rb +5 -0
  50. data/lib/ventriloquist/services/redis.rb +12 -6
  51. data/lib/ventriloquist/services/rethink_db.rb +16 -0
  52. data/lib/ventriloquist/services_builder.rb +14 -5
  53. data/lib/ventriloquist/version.rb +1 -1
  54. data/locales/en.yml +6 -1
  55. data/services/base/Dockerfile +8 -7
  56. data/services/build-all.sh +6 -3
  57. data/services/elasticsearch/Dockerfile +6 -7
  58. data/services/mailcatcher/Dockerfile +3 -6
  59. data/services/memcached/Dockerfile +11 -12
  60. data/services/mysql/5.5/Dockerfile +17 -0
  61. data/services/mysql/{config → 5.5/config}/bin/add-mysql-user +0 -5
  62. data/services/mysql/5.6/Dockerfile +32 -0
  63. data/services/mysql/5.6/config/bin/add-mysql-user +15 -0
  64. data/services/mysql/5.6/config/etc/my.cnf +129 -0
  65. data/services/openjdk7/Dockerfile +1 -5
  66. data/services/postgresql/9.1/Dockerfile +5 -10
  67. data/services/postgresql/9.2/Dockerfile +7 -6
  68. data/services/postgresql/9.3/Dockerfile +16 -0
  69. data/services/postgresql/9.3/config/bin/prepare-postgres +25 -0
  70. data/services/postgresql/9.3/config/bin/start-postgres +6 -0
  71. data/services/postgresql/9.3/config/etc/postgresql/9.3/main/postgresql.conf +591 -0
  72. data/services/redis/Dockerfile +10 -6
  73. data/services/rethinkdb/Dockerfile +17 -0
  74. data/spec/unit/service_spec.rb +22 -12
  75. data/spec/unit/services_builder_spec.rb +26 -8
  76. data/ventriloquist.gemspec +1 -1
  77. metadata +46 -28
  78. data/lib/ventriloquist/cap/debian/git_install.rb +0 -18
  79. data/lib/ventriloquist/cap/debian/install_build_tools.rb +0 -18
  80. data/lib/ventriloquist/cap/debian/mercurial_install.rb +0 -18
  81. data/lib/ventriloquist/cap/linux/download.rb +0 -26
  82. data/lib/ventriloquist/cap/linux/rvm_install.rb +0 -17
  83. data/services/mysql/Dockerfile +0 -20
@@ -1,11 +1,15 @@
1
- # Redis Server 2.4.15
2
- #
3
- # VERSION 0.0.1
1
+ # Redis Server
4
2
 
5
3
  FROM fgrehm/ventriloquist-base
6
- MAINTAINER Fabio Rehm "fgrehm@gmail.com"
7
4
 
8
- RUN apt-get install -y redis-server
5
+ # Make sure to update lib/ventriloquist/services/redis.rb if the version gets bumped
6
+ RUN wget -q http://download.redis.io/releases/redis-2.8.2.tar.gz -O /tmp/redis.tar.gz && \
7
+ cd /tmp && \
8
+ tar xvfz redis.tar.gz && \
9
+ cd redis-2.8.2 && \
10
+ make redis-server && \
11
+ mv src/redis-server /usr/bin && \
12
+ cd .. && rm -rf redis*
9
13
 
10
- EXPOSE 6379:6379
14
+ EXPOSE 6379
11
15
  CMD ["/usr/bin/redis-server"]
@@ -0,0 +1,17 @@
1
+ # Dockerfile for Rethinkdb
2
+ # Based on https://github.com/crosbymichael/Dockerfiles/blob/master/rethinkdb/Dockerfile
3
+
4
+ FROM fgrehm/ventriloquist-base
5
+
6
+ RUN add-apt-repository ppa:rethinkdb/ppa && \
7
+ apt-get update && \
8
+ apt-get install -y rethinkdb && \
9
+ apt-get clean
10
+
11
+ # create the /rethinkdb_data dir structure
12
+ RUN /usr/bin/rethinkdb create
13
+
14
+ # Rethinkdb process, cluster, and webui
15
+ EXPOSE 28015 29015 8080
16
+
17
+ CMD ["/usr/bin/rethinkdb", "--bind", "all"]
@@ -8,7 +8,7 @@ require 'ventriloquist/service'
8
8
  describe VagrantPlugins::Ventriloquist::Service do
9
9
  verify_contract(:service)
10
10
 
11
- fake(:docker_client)
11
+ let(:docker_client) { fake(:docker_client, container_running?: false) }
12
12
  fake(:communicator) { VagrantPlugins::CommunicatorSSH::Communicator }
13
13
  fake(:ui) { Vagrant::UI::Interface }
14
14
  let(:env) { fake(:environment, ui: ui) }
@@ -21,20 +21,30 @@ describe VagrantPlugins::Ventriloquist::Service do
21
21
 
22
22
  before { subject.provision(machine) }
23
23
 
24
- it 'runs the configured container' do
25
- expect(docker_client).to have_received.run_container(service_conf)
26
- end
24
+ context 'given the container has not been created' do
25
+ it 'runs the configured container' do
26
+ expect(docker_client).to have_received.run_container(service_conf)
27
+ end
27
28
 
28
- it 'creates a directory for keeping container id files' do
29
- expect(communicator).to have_received.sudo('mkdir -p /var/lib/ventriloquist/cids')
30
- end
29
+ it 'creates a directory for keeping container id files' do
30
+ expect(communicator).to have_received.sudo('mkdir -p /var/lib/ventriloquist/cids')
31
+ end
31
32
 
32
- it 'assigns a cidfile based on the service name' do
33
- expected_cidfile = "#{described_class::CONTAINER_IDS_PATH}/#{service_name}"
34
- expect(docker_client).to have_received.run_container(with{|c| c[:cidfile] == expected_cidfile})
33
+ it 'assigns a cidfile based on the service name' do
34
+ expected_cidfile = "#{described_class::CONTAINER_IDS_PATH}/#{service_name}"
35
+ expect(docker_client).to have_received.run_container(with{|c| c[:cidfile] == expected_cidfile})
36
+ end
37
+
38
+ it 'sets dns to 127.0.0.1 to reduce latency' do
39
+ expect(docker_client).to have_received.run_container(with{|c| c[:dns] == "127.0.0.1"})
40
+ end
35
41
  end
36
42
 
37
- it 'sets dns to 127.0.0.1 to reduce latency' do
38
- expect(docker_client).to have_received.run_container(with{|c| c[:dns] == "127.0.0.1"})
43
+ context 'given the container has already been created' do
44
+ let(:docker_client) { fake(:docker_client, container_running?: true) }
45
+
46
+ it 'does not attempt to run container' do
47
+ expect(docker_client).to_not have_received.run_container(any_args)
48
+ end
39
49
  end
40
50
  end
@@ -11,22 +11,36 @@ describe VagrantPlugins::Ventriloquist::ServicesBuilder do
11
11
  fake(:docker_client)
12
12
 
13
13
  let(:pg_cfg) { {image: 'user/pg', tag: '9.2'} }
14
- let(:svcs_configs) { [{pg: pg_cfg}, ['some-service'], 'mysql:1.2'] }
15
14
  let(:custom_mapping) { {'mysql' => custom_service} }
16
15
  let(:custom_service) { Class.new(Service) }
16
+ let(:svcs_configs) { [
17
+ {pg: pg_cfg},
18
+ ['some-service'],
19
+ 'mysql:1.2',
20
+ {name: {type: 'mysql'}},
21
+ {api_db: {vimage: 'mysql'}}
22
+ ] }
17
23
 
18
- let(:services) { described_class.new(svcs_configs, custom_mapping).build(docker_client) }
19
- let(:pg) { services[0] }
20
- let(:other) { services[1] }
21
- let(:mysql) { services[2] }
24
+ let(:services) { described_class.new(svcs_configs, custom_mapping).build(docker_client) }
25
+ let(:pg) { services[0] }
26
+ let(:other) { services[1] }
27
+ let(:mysql) { services[2] }
28
+ let(:mysql_2) { services[3] }
29
+ let(:vimage_ex) { services[4] }
22
30
 
23
31
  it 'builds a list of service objects' do
24
- expect(services).to have(3).items
25
- expect(pg).to be_a(Service)
26
- expect(other).to be_a(Service)
32
+ expect(services).to have(5).items
33
+ expect(services.all?{|s| s.is_a?(Service)}).to be_true
34
+ end
35
+
36
+ it 'uses container name as type' do
27
37
  expect(mysql).to be_a(custom_service)
28
38
  end
29
39
 
40
+ it 'looks up service class by type name' do
41
+ expect(mysql_2).to be_a(custom_service)
42
+ end
43
+
30
44
  it 'sets the docker client for services' do
31
45
  expect(pg.docker_client).to eq(docker_client)
32
46
  end
@@ -47,6 +61,10 @@ describe VagrantPlugins::Ventriloquist::ServicesBuilder do
47
61
  expect(mysql.config[:image]).to eq('fgrehm/ventriloquist-mysql:1.2')
48
62
  end
49
63
 
64
+ it 'expands vimage' do
65
+ expect(vimage_ex.config[:image]).to eq('fgrehm/ventriloquist-mysql:latest')
66
+ end
67
+
50
68
  it 'sets the service name' do
51
69
  expect(pg.name).to eq('pg')
52
70
  expect(mysql.name).to eq('mysql')
@@ -18,5 +18,5 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_dependency 'vocker', '~> 0.3.3'
21
+ spec.add_dependency 'vocker', '~> 0.4.0'
22
22
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ventriloquist
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fabio Rehm
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-28 00:00:00.000000000 Z
11
+ date: 2013-12-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: vocker
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ~>
18
18
  - !ruby/object:Gem::Version
19
- version: 0.3.3
19
+ version: 0.4.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ~>
25
25
  - !ruby/object:Gem::Version
26
- version: 0.3.3
26
+ version: 0.4.0
27
27
  description: Vagrant development environments made easy
28
28
  email:
29
29
  - fgrehm@gmail.com
@@ -41,30 +41,36 @@ files:
41
41
  - LICENSE.txt
42
42
  - README.md
43
43
  - Rakefile
44
+ - base_box/README.md
45
+ - base_box/Vagrantfile
44
46
  - development/Vagrantfile
45
47
  - lib/ventriloquist.rb
46
- - lib/ventriloquist/cap/debian/elixir_install.rb
47
- - lib/ventriloquist/cap/debian/erlang_install.rb
48
- - lib/ventriloquist/cap/debian/git_install.rb
49
- - lib/ventriloquist/cap/debian/go_install.rb
50
- - lib/ventriloquist/cap/debian/install_build_tools.rb
51
- - lib/ventriloquist/cap/debian/mercurial_install.rb
52
- - lib/ventriloquist/cap/debian/mysql_install_client.rb
53
- - lib/ventriloquist/cap/debian/mysql_install_headers.rb
54
- - lib/ventriloquist/cap/debian/pg_install_client.rb
55
- - lib/ventriloquist/cap/debian/pg_install_headers.rb
56
- - lib/ventriloquist/cap/debian/phantomjs_install.rb
57
- - lib/ventriloquist/cap/debian/python.rb
58
- - lib/ventriloquist/cap/debian/ventriloquist_containers_upstart.rb
59
- - lib/ventriloquist/cap/linux/download.rb
60
- - lib/ventriloquist/cap/linux/make.rb
61
- - lib/ventriloquist/cap/linux/mysql_configure_client.rb
62
- - lib/ventriloquist/cap/linux/nvm_install.rb
63
- - lib/ventriloquist/cap/linux/nvm_install_nodejs.rb
64
- - lib/ventriloquist/cap/linux/pg_export_pghost.rb
65
- - lib/ventriloquist/cap/linux/rvm_install.rb
66
- - lib/ventriloquist/cap/linux/rvm_install_ruby.rb
67
- - lib/ventriloquist/cap/linux/untar.rb
48
+ - lib/ventriloquist/cap/platforms.rb
49
+ - lib/ventriloquist/cap/platforms/debian/elixir_install.rb
50
+ - lib/ventriloquist/cap/platforms/debian/erlang_install.rb
51
+ - lib/ventriloquist/cap/platforms/debian/go_install.rb
52
+ - lib/ventriloquist/cap/platforms/debian/phantomjs_install.rb
53
+ - lib/ventriloquist/cap/platforms/debian/python.rb
54
+ - lib/ventriloquist/cap/platforms/linux/nvm_install.rb
55
+ - lib/ventriloquist/cap/platforms/linux/nvm_install_nodejs.rb
56
+ - lib/ventriloquist/cap/platforms/linux/rvm_install.rb
57
+ - lib/ventriloquist/cap/platforms/linux/rvm_install_ruby.rb
58
+ - lib/ventriloquist/cap/services.rb
59
+ - lib/ventriloquist/cap/services/debian/mysql_install_client.rb
60
+ - lib/ventriloquist/cap/services/debian/mysql_install_headers.rb
61
+ - lib/ventriloquist/cap/services/debian/pg_install_client.rb
62
+ - lib/ventriloquist/cap/services/debian/pg_install_headers.rb
63
+ - lib/ventriloquist/cap/services/debian/ventriloquist_containers_upstart.rb
64
+ - lib/ventriloquist/cap/services/linux/mysql_configure_client.rb
65
+ - lib/ventriloquist/cap/services/linux/pg_export_pghost.rb
66
+ - lib/ventriloquist/cap/utils.rb
67
+ - lib/ventriloquist/cap/utils/debian/git_install.rb
68
+ - lib/ventriloquist/cap/utils/debian/install_build_tools.rb
69
+ - lib/ventriloquist/cap/utils/debian/install_packages.rb
70
+ - lib/ventriloquist/cap/utils/debian/mercurial_install.rb
71
+ - lib/ventriloquist/cap/utils/linux/download.rb
72
+ - lib/ventriloquist/cap/utils/linux/make.rb
73
+ - lib/ventriloquist/cap/utils/linux/untar.rb
68
74
  - lib/ventriloquist/config.rb
69
75
  - lib/ventriloquist/errors.rb
70
76
  - lib/ventriloquist/platform.rb
@@ -79,9 +85,13 @@ files:
79
85
  - lib/ventriloquist/plugin.rb
80
86
  - lib/ventriloquist/provisioner.rb
81
87
  - lib/ventriloquist/service.rb
88
+ - lib/ventriloquist/services/elastic_search.rb
89
+ - lib/ventriloquist/services/mail_catcher.rb
90
+ - lib/ventriloquist/services/memcached.rb
82
91
  - lib/ventriloquist/services/mysql.rb
83
92
  - lib/ventriloquist/services/postgresql.rb
84
93
  - lib/ventriloquist/services/redis.rb
94
+ - lib/ventriloquist/services/rethink_db.rb
85
95
  - lib/ventriloquist/services_builder.rb
86
96
  - lib/ventriloquist/version.rb
87
97
  - locales/en.yml
@@ -90,8 +100,11 @@ files:
90
100
  - services/elasticsearch/Dockerfile
91
101
  - services/mailcatcher/Dockerfile
92
102
  - services/memcached/Dockerfile
93
- - services/mysql/Dockerfile
94
- - services/mysql/config/bin/add-mysql-user
103
+ - services/mysql/5.5/Dockerfile
104
+ - services/mysql/5.5/config/bin/add-mysql-user
105
+ - services/mysql/5.6/Dockerfile
106
+ - services/mysql/5.6/config/bin/add-mysql-user
107
+ - services/mysql/5.6/config/etc/my.cnf
95
108
  - services/openjdk7/Dockerfile
96
109
  - services/postgresql/9.1/Dockerfile
97
110
  - services/postgresql/9.1/config/bin/prepare-postgres
@@ -101,7 +114,12 @@ files:
101
114
  - services/postgresql/9.2/config/bin/prepare-postgres
102
115
  - services/postgresql/9.2/config/bin/start-postgres
103
116
  - services/postgresql/9.2/config/etc/postgresql/9.2/main/postgresql.conf
117
+ - services/postgresql/9.3/Dockerfile
118
+ - services/postgresql/9.3/config/bin/prepare-postgres
119
+ - services/postgresql/9.3/config/bin/start-postgres
120
+ - services/postgresql/9.3/config/etc/postgresql/9.3/main/postgresql.conf
104
121
  - services/redis/Dockerfile
122
+ - services/rethinkdb/Dockerfile
105
123
  - spec/spec_helper.rb
106
124
  - spec/unit/platforms_builder_spec.rb
107
125
  - spec/unit/service_spec.rb
@@ -1,18 +0,0 @@
1
- module VagrantPlugins
2
- module Ventriloquist
3
- module Cap
4
- module Debian
5
- module GitInstall
6
- def self.git_install(machine)
7
- machine.communicate.tap do |comm|
8
- if ! comm.test('which git > /dev/null')
9
- machine.env.ui.info('Installing git')
10
- comm.sudo('apt-get install -y git')
11
- end
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,18 +0,0 @@
1
- module VagrantPlugins
2
- module Ventriloquist
3
- module Cap
4
- module Debian
5
- module InstallBuildTools
6
- def self.install_build_tools(machine)
7
- machine.communicate.tap do |comm|
8
- if ! comm.test('dpkg -l | grep build-essential')
9
- machine.env.ui.info('Installing build tools')
10
- comm.sudo('apt-get install -y build-essential')
11
- end
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,18 +0,0 @@
1
- module VagrantPlugins
2
- module Ventriloquist
3
- module Cap
4
- module Debian
5
- module MercurialInstall
6
- def self.mercurial_install(machine)
7
- machine.communicate.tap do |comm|
8
- if ! comm.test('which hg > /dev/null')
9
- machine.env.ui.info('Installing mercurial')
10
- comm.sudo('apt-get install -y mercurial')
11
- end
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,26 +0,0 @@
1
- module VagrantPlugins
2
- module Ventriloquist
3
- module Cap
4
- module Linux
5
- module Download
6
- # FIXME: Use vagrant downloader and upload to guest machine
7
- def self.download(machine, src, destination)
8
- machine.communicate.tap do |comm|
9
- if comm.test('which wget')
10
- machine.env.ui.info("Downloading #{src} to #{destination}")
11
- comm.execute("wget #{src} -O #{destination}")
12
-
13
- elsif comm.test('which curl')
14
- machine.env.ui.info("Downloading #{src} to #{destination}")
15
- comm.execute("curl #{src} -o #{destination}")
16
-
17
- else
18
- raise 'Unable to download file for guest VM!'
19
- end
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
26
- end
@@ -1,17 +0,0 @@
1
- module VagrantPlugins
2
- module Ventriloquist
3
- module Cap
4
- module Linux
5
- module RvmInstall
6
- def self.rvm_install(machine)
7
- if ! machine.communicate.test('test -d $HOME/.rvm')
8
- machine.env.ui.info('Installing RVM')
9
- machine.communicate.execute('\curl -L https://get.rvm.io | bash -s stable --autolibs=enabled --ignore-dotfiles')
10
- machine.communicate.execute("echo 'source $HOME/.rvm/scripts/rvm' >> ~/.profile")
11
- end
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
@@ -1,20 +0,0 @@
1
- # MySQL 5.5
2
- #
3
- # VERSION 0.0.1
4
-
5
- FROM fgrehm/ventriloquist-base
6
- MAINTAINER Fabio Rehm "fgrehm@gmail.com"
7
-
8
- # prevent apt from starting mysql right after the installation
9
- RUN echo "#!/bin/sh\nexit 101" > /usr/sbin/policy-rc.d; chmod +x /usr/sbin/policy-rc.d
10
-
11
- RUN apt-get -q -y install mysql-server-5.5 && apt-get clean
12
-
13
- # allow autostart again
14
- RUN rm /usr/sbin/policy-rc.d
15
-
16
- ADD config /
17
- RUN /bin/add-mysql-user vagrant vagrant
18
-
19
- EXPOSE 3306:3306
20
- CMD ["/usr/sbin/mysqld"]