File tree Expand file tree Collapse file tree 7 files changed +79
-65
lines changed Expand file tree Collapse file tree 7 files changed +79
-65
lines changed Original file line number Diff line number Diff line change
1
+ # Logs and databases #
2
+ # #####################
3
+ * .log
4
+ * .sqlite
5
+
6
+ # OS generated files #
7
+ # #####################
8
+ .DS_Store *
9
+ ehthumbs.db
10
+ Icon ?
11
+ Thumbs.db
12
+
13
+ # SASS Cache
14
+ .sass-cache /
15
+ tmp /
16
+
17
+ # Elastic Beanstalk Files
18
+ .elasticbeanstalk /*
19
+
20
+ .ruby-version
21
+ docker-compose.yml
22
+
23
+ .Gemfile.EXAMPLE
24
+ Rakefile.EXAMPLE
25
+ install_ * .sql
26
+ .git
Original file line number Diff line number Diff line change 1
- FROM springest/ ruby:2.1.5
1
+ FROM ruby:2.4.0-alpine
2
2
3
3
# Environment variables:
4
4
ENV RACK_ENV ''
@@ -16,19 +16,29 @@ ENV READ_DATABASES ''
16
16
ENV MISC_DEFAULT false
17
17
ENV MISC_DBLISTMATCH false
18
18
19
+ RUN apk update && apk --update add postgresql-client libstdc++
20
+
19
21
# Rubygems and bundler
20
22
RUN gem update --system --no-ri --no-rdoc
21
23
RUN gem install bundler --no-ri --no-rdoc
22
24
23
- # python-software-properties is required for add-apt-repository.
24
- RUN useradd asq
25
- RUN mkdir /home/asq
26
- ADD . /home/asq
27
- RUN chown -R asq: /home/asq
25
+ RUN mkdir /app
26
+
27
+ ADD Gemfile /app/
28
+ ADD Gemfile.lock /app/
29
+
30
+ WORKDIR /app
31
+
32
+ RUN apk --update add --virtual build-dependencies g++ musl-dev make \
33
+ postgresql-dev && \
34
+ bundle install --deployment && \
35
+ apk del build-dependencies
36
+
37
+ ADD . /app
28
38
29
- WORKDIR /home/asq
39
+ RUN chown -R nobody:nogroup /app
40
+ USER nobody
30
41
31
- RUN su asq -c 'bundle install --deployment'
32
- CMD su asq -c /home/asq/docker_runner.rb
42
+ CMD /app/docker_runner.rb
33
43
34
44
EXPOSE 3000
Original file line number Diff line number Diff line change 4
4
{
5
5
"ContainerPort" : " 3000"
6
6
}
7
- ],
8
- "Volumes" : [
9
- {
10
- "HostDirectory" : " /var/app" ,
11
- "ContainerDirectory" : " /var/app"
12
- }
13
7
]
14
8
}
Original file line number Diff line number Diff line change 1
- source 'http ://rubygems.org'
1
+ source 'https ://rubygems.org'
2
2
3
3
gem 'sinatra'
4
4
gem 'net-ssh'
5
5
gem 'shotgun'
6
6
gem 'sequel'
7
+ gem 'bacon'
7
8
gem 'sinatra-sequel'
8
9
gem 'omniauth-google-oauth2'
9
10
gem 'rake'
10
11
11
- group :production do
12
- gem 'unicorn'
13
- end
14
-
15
12
# Frontend
16
13
gem 'haml'
17
14
gem 'sass'
18
- gem 'json'
19
15
gem 'thin'
20
16
gem 'htmlentities'
21
17
22
18
# DB, uncomment which one you want.
23
19
# Also add config to the `config.yml` for the specified adapter.
24
- gem 'mysql2'
20
+ # gem 'mysql2'
25
21
gem 'pg'
26
- gem 'sqlite3'
22
+ # gem 'sqlite3'
Original file line number Diff line number Diff line change 1
1
source 'http://rubygems.org'
2
2
3
- gem 'thin'
4
3
gem 'sinatra'
5
4
gem 'net-ssh'
6
5
gem 'shotgun'
7
6
gem 'sequel'
8
7
gem 'sinatra-sequel'
9
-
8
+ gem 'omniauth-google-oauth2'
9
+ gem 'rake'
10
10
11
11
# Frontend
12
12
gem 'haml'
13
13
gem 'sass'
14
- gem 'json '
14
+ gem 'thin '
15
15
gem 'htmlentities'
16
16
17
17
# DB, uncomment which one you want.
18
18
# Also add config to the `config.yml` for the specified adapter.
19
19
#gem 'mysql2'
20
20
#gem 'pg'
21
- #gem 'sqlite3'
21
+ #gem 'sqlite3'
Original file line number Diff line number Diff line change 1
1
GEM
2
- remote: http ://rubygems.org/
2
+ remote: https ://rubygems.org/
3
3
specs:
4
4
bacon (1.2.0 )
5
- daemons (1.2.3 )
6
- eventmachine (1.2.0.1 )
7
- faraday (0.9.2 )
5
+ daemons (1.2.4 )
6
+ eventmachine (1.2.3 )
7
+ faraday (0.11.0 )
8
8
multipart-post (>= 1.2 , < 3 )
9
9
haml (4.0.7 )
10
10
tilt
11
- hashie (3.4.4 )
11
+ hashie (3.5.5 )
12
12
htmlentities (4.3.4 )
13
- json (1.8.3 )
14
- jwt (1.5.4 )
15
- kgio (2.10.0 )
13
+ jwt (1.5.6 )
16
14
multi_json (1.12.1 )
17
- multi_xml (0.5.5 )
15
+ multi_xml (0.6.0 )
18
16
multipart-post (2.0.0 )
19
- mysql2 (0.4.4 )
20
- net-ssh (3.1.1 )
21
- oauth2 (1.0.0 )
22
- faraday (>= 0.8 , < 0.10 )
17
+ net-ssh (4.1.0 )
18
+ oauth2 (1.3.1 )
19
+ faraday (>= 0.8 , < 0.12 )
23
20
jwt (~> 1.0 )
24
21
multi_json (~> 1.3 )
25
22
multi_xml (~> 0.5 )
26
- rack (~> 1.2 )
27
- omniauth (1.3 .1 )
28
- hashie (>= 1.2 , < 4 )
29
- rack (>= 1.0 , < 3 )
23
+ rack (>= 1.2 , < 3 )
24
+ omniauth (1.6 .1 )
25
+ hashie (>= 3.4.6 , < 3.6.0 )
26
+ rack (>= 1.6.2 , < 3 )
30
27
omniauth-google-oauth2 (0.4.1 )
31
28
jwt (~> 1.5.2 )
32
29
multi_json (~> 1.3 )
35
32
omniauth-oauth2 (1.4.0 )
36
33
oauth2 (~> 1.0 )
37
34
omniauth (~> 1.2 )
38
- pg (0.18.4 )
39
- rack (1.6.4 )
35
+ pg (0.20.0 )
36
+ rack (1.6.5 )
40
37
rack-protection (1.5.3 )
41
38
rack
42
- raindrops (0.16.0 )
43
- rake (11.1.2 )
44
- sass (3.4.22 )
45
- sequel (4.35.0 )
46
- shotgun (0.9.1 )
39
+ rake (12.0.0 )
40
+ sass (3.4.23 )
41
+ sequel (4.44.0 )
42
+ shotgun (0.9.2 )
47
43
rack (>= 1.0 )
48
- sinatra (1.4.7 )
44
+ sinatra (1.4.8 )
49
45
rack (~> 1.5 )
50
46
rack-protection (~> 1.4 )
51
47
tilt (>= 1.3 , < 3 )
52
48
sinatra-sequel (0.9.0 )
53
- bacon
54
49
sequel (>= 3.2.0 )
55
50
sinatra (>= 0.9.4 )
56
- sqlite3 (1.3.11 )
57
51
thin (1.7.0 )
58
52
daemons (~> 1.0 , >= 1.0.9 )
59
53
eventmachine (~> 1.0 , >= 1.0.4 )
60
54
rack (>= 1 , < 3 )
61
- tilt (2.0.5 )
62
- unicorn (5.1.0 )
63
- kgio (~> 2.6 )
64
- raindrops (~> 0.7 )
55
+ tilt (2.0.6 )
65
56
66
57
PLATFORMS
67
58
ruby
68
59
69
60
DEPENDENCIES
61
+ bacon
70
62
haml
71
63
htmlentities
72
- json
73
- mysql2
74
64
net-ssh
75
65
omniauth-google-oauth2
76
66
pg
@@ -80,9 +70,7 @@ DEPENDENCIES
80
70
shotgun
81
71
sinatra
82
72
sinatra-sequel
83
- sqlite3
84
73
thin
85
- unicorn
86
74
87
75
BUNDLED WITH
88
- 1.11.2
76
+ 1.14.3
Original file line number Diff line number Diff line change @@ -9,7 +9,7 @@ def get_env_or_fail(name)
9
9
end
10
10
end
11
11
12
- File . open ( "/home/asq /config.yml" , "w" ) do |config |
12
+ File . open ( "/app /config.yml" , "w" ) do |config |
13
13
config . puts "database:"
14
14
config . puts " adapter: #{ get_env_or_fail ( "DB_ADAPTER" ) } "
15
15
config . puts " host: #{ get_env_or_fail ( "DB_HOSTNAME" ) } "
@@ -32,5 +32,5 @@ def get_env_or_fail(name)
32
32
config . puts " dblistMatch: #{ get_env_or_fail ( "MISC_DBLISTMATCH" ) } "
33
33
end
34
34
35
- Dir . chdir ( "/home/asq " )
35
+ Dir . chdir ( "/app " )
36
36
exec ( "/usr/bin/env bundle exec thin start -p 3000" )
You can’t perform that action at this time.
0 commit comments