Browse Source

dockerfile decente e altre storie

encrypt 5 years ago
parent
commit
690e76a370
3 changed files with 24 additions and 2 deletions
  1. 15 0
      Dockerfile
  2. 3 0
      config.ru
  3. 6 2
      webapp.rb

+ 15 - 0
Dockerfile

@@ -0,0 +1,15 @@
+FROM alpine
+
+RUN apk update && \
+    apk upgrade
+
+RUN apk add ruby build-base ruby-dev sqlite-dev
+
+RUN gem install --no-document sinatra data_mapper dm-sqlite-adapter bigdecimal puma etc
+
+COPY webapp.rb config.ru /hlbb/
+COPY views/* /hlbb/views/
+
+WORKDIR /hlbb
+
+ENTRYPOINT ["puma", "-e", "production", "-p", "8080"]

+ 3 - 0
config.ru

@@ -0,0 +1,3 @@
+require './webapp.rb'
+
+run Sinatra::Application

+ 6 - 2
webapp.rb

@@ -2,7 +2,11 @@ require 'sinatra'
 require 'data_mapper'
 require 'json'
 
-DataMapper::setup(:default, "sqlite3:///hlbb/hacklabbo.db")
+DataMapper::setup(:default, "sqlite3:///hlbb/data/hacklabbo.db")
+
+configure {
+  set :server, :puma
+}
 
 class Entry
   include DataMapper::Resource
@@ -14,7 +18,7 @@ end
 DataMapper.finalize
 Entry.auto_upgrade!
 
-set :secret_token, "unsecure_token"
+set :secret_token, ENV["hl_secret_token"]
 
 get '/' do
   entry = Entry.all(limit: 1, order: [ :id.desc ])