From 93be525832b3c6c92fca161993ea8a80599535f4 Mon Sep 17 00:00:00 2001 From: Jacob Cody Wimer Date: Fri, 26 Oct 2018 00:21:02 +0000 Subject: [PATCH] Removed un needed packages in prod dockerfile --- deploy/rails-prod-Dockerfile | 74 +++++++++--------------------------- 1 file changed, 18 insertions(+), 56 deletions(-) diff --git a/deploy/rails-prod-Dockerfile b/deploy/rails-prod-Dockerfile index 1a5a659..7086a70 100644 --- a/deploy/rails-prod-Dockerfile +++ b/deploy/rails-prod-Dockerfile @@ -1,46 +1,22 @@ -FROM ubuntu:xenial +FROM ruby:2.5.1-slim HEALTHCHECK --start-period=30s CMD curl --insecure https://127.0.0.1/ -ENV RUBY_VERSION=2.5.1 - ENV TINI_VERSION v0.18.0 ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /tini RUN chmod +x /tini RUN apt-get -qq update \ - && DEBIAN_FRONTEND=noninteractive apt-get -qq upgrade -y \ && DEBIAN_FRONTEND=noninteractive apt-get -qq install -y \ build-essential \ - libssl-dev \ - libyaml-dev \ - libreadline-dev \ openssl \ curl \ - git-core \ - zlib1g-dev \ - bison \ - libxml2-dev \ - libxslt1-dev \ - libcurl4-openssl-dev \ - libsqlite3-dev \ sqlite3 \ + libsqlite3-dev \ wget \ - apt-transport-https \ - ca-certificates \ - mysql-client \ - libmysqlclient-dev \ - postfix \ + default-libmysqlclient-dev \ nodejs \ - nginx \ - lsb-release \ - dirmngr \ - gnupg \ - && wget http://cache.ruby-lang.org/pub/ruby/$(echo $RUBY_VERSION | cut -d '.' -f 1,2)/ruby-${RUBY_VERSION}.tar.gz \ - && tar -xzf ruby-${RUBY_VERSION}.tar.gz \ - && cd ruby-${RUBY_VERSION} \ - && ./configure \ - && make && make install \ + tzdata \ && apt-get -qq clean \ && apt-get autoremove -y \ && rm -rf \ @@ -48,17 +24,21 @@ RUN apt-get -qq update \ /tmp/* \ /var/tmp/* -# Set timezone inside the container -RUN echo "America/New_York" > /etc/timezone \ - && rm /etc/localtime \ - && ln -s /usr/share/zoneinfo/America/New_York /etc/localtime +RUN gem install --no-rdoc --no-ri bundler +#Cache gems so they don't install on every code change +RUN rm -rf /rails && mkdir /rails +WORKDIR /rails +COPY Gemfile Gemfile +COPY Gemfile.lock Gemfile.lock +RUN bundle install -#New Relic -#RUN echo deb http://apt.newrelic.com/debian/ newrelic non-free >> /etc/apt/sources.list.d/newrelic.list \ -# && wget -O- https://download.newrelic.com/548C16BF.gpg | apt-key add - \ -# && apt-get update \ -# && apt-get install newrelic-sysmond -y \ -# && nrsysmond-config --set license_key=$NEW_RELIC_LICENSE_KEY +# Copy site into place. +ADD . /rails/ + +#Need temp secret keys to precompile assets +#ENV WRESTLINGDEV_SECRET_KEY_BASE 077cdbef5c2ccf22543fb17a67339f234306b7fa2e1e4463d851c444c10a5611829a2290b253da78339427f131571fac9a42c83d960b2d25ecc10a4a0a7ce1a2 +#ENV WRESTLINGDEV_DEVISE_SECRET_KEY 2f29d49db6704377ba263f7cb9db085b386bcb301c0cd501126a674686ab1a109754071165b08cd72af03cec4642a4dd04361c994462254dd5d85e9594e8b9aa +#RUN RAILS_ENV=production bundle exec rake assets:precompile #SSL RUN mkdir /ssl \ @@ -68,26 +48,8 @@ RUN mkdir /ssl \ EXPOSE 80 EXPOSE 443 -RUN gem install --no-rdoc --no-ri bundler -#Cache gems so they don't install on every code change -WORKDIR /tmp -COPY Gemfile Gemfile -COPY Gemfile.lock Gemfile.lock -RUN bundle install - -# Copy site into place. -RUN rm -rf /rails && mkdir /rails -WORKDIR /rails/ -ADD . /rails/ - -#Need temp secret keys to precompile assets -ENV WRESTLINGDEV_SECRET_KEY_BASE 077cdbef5c2ccf22543fb17a67339f234306b7fa2e1e4463d851c444c10a5611829a2290b253da78339427f131571fac9a42c83d960b2d25ecc10a4a0a7ce1a2 -ENV WRESTLINGDEV_DEVISE_SECRET_KEY 2f29d49db6704377ba263f7cb9db085b386bcb301c0cd501126a674686ab1a109754071165b08cd72af03cec4642a4dd04361c994462254dd5d85e9594e8b9aa -RUN RAILS_ENV=production bundle exec rake assets:precompile - # Tini solves the zombie PID problem ENTRYPOINT ["/tini", "--"] -WORKDIR /rails CMD bundle exec puma -w 3 -t 5:5 -b 'ssl://0.0.0.0:443?key=/ssl/server.key&verify_mode=none&cert=/ssl/server.crt' -e production #CMD bundle exec passenger start --max-pool-size 3 --environment production --ssl --ssl-certificate /ssl/server.crt --ssl-certificate-key /ssl/server.key