FROM ruby:2.2 ENV RAILS_ENV production # Add 'web' user which will run the application RUN adduser web --home /home/web --shell /bin/bash --disabled-password --gecos "" RUN apt-get update && apt-get -y upgrade RUN apt-get -y install mysql-client libmysqlclient-dev memcached nodejs RUN service memcached start # Separate Gemfile ADD so that `bundle install` can be cached more effectively ADD Gemfile /var/www/ ADD Gemfile.lock /var/www/ RUN chown -R web:web /var/www &&\ mkdir -p /var/bundle &&\ chown -R web:web /var/bundle RUN su -c "bundle config github.https true; cd /var/www && bundle install --path /var/bundle --jobs 4" -s /bin/bash -l web # Add application source ADD . /var/www RUN chown -R web:web /var/www WORKDIR /var/www USER web RUN mkdir -p /var/www/log && touch /var/www/log/${RAILS_ENV}.log RUN bundle config github.https true; cd /var/www && bundle install --path /var/bundle --jobs 4 RUN bundle exec rake assets:precompile # This is a temporary solution to fix assets issue USER root RUN mv /var/www/public/assets /home/web/assets CMD ["/var/www/script/entry.sh"]