FROM ruby:slim

RUN apt-get update
RUN apt-get install build-essential libxml2-dev libxslt1-dev -y

RUN gem install rails
RUN rails new project
WORKDIR /project
RUN cd /project

RUN bundle install

RUN echo "class BaseController < ActionController::Base" > /project/app/controllers/base_controller.rb
RUN echo "before_filter :set_cache_headers" > /project/app/controllers/base_controller.rb
RUN echo "  private" > /project/app/controllers/base_controller.rb
RUN echo "def set_cache_headers" > /project/app/controllers/base_controller.rb
RUN echo "    response.headers['Cache-Control'] = 'no-cache, no-store'" > /project/app/controllers/base_controller.rb
RUN echo "    response.headers['Pragma'] = 'no-cache'" > /project/app/controllers/base_controller.rb
RUN echo "    response.headers['Expires'] = 'Fri, 01 Jan 1990 00:00:00 GMT'" > /project/app/controllers/base_controller.rb
RUN echo "end" > /project/app/controllers/base_controller.rb
RUN echo "end" > /project/app/controllers/base_controller.rb

RUN sed -i 's/ActionController::Base/BaseController/g' /project/app/controllers/application_controller.txt

EXPOSE 3000
CMD ["rails", "server", "-b", "0.0.0.0"]