This repository has been archived on 2021-10-24. You can view files and clone it, but cannot push or open issues or pull requests.
greenlight/dockerfiles/v2/alpine

56 lines
1.2 KiB
Plaintext

FROM alpine:3.13 AS alpine
ARG RAILS_ROOT=/usr/src/app
ENV RAILS_ROOT=${RAILS_ROOT}
FROM alpine AS base
WORKDIR $RAILS_ROOT
RUN apk add --no-cache \
libpq \
libxml2 \
libxslt \
ruby \
ruby-irb \
ruby-bigdecimal \
ruby-bundler \
ruby-json \
tzdata \
shared-mime-info
FROM base as builder
RUN apk add --no-cache \
build-base \
curl-dev \
git \
libxml2-dev \
libxslt-dev \
pkgconf \
postgresql-dev \
sqlite-libs \
sqlite-dev \
ruby-dev \
yaml-dev \
zlib-dev \
nodejs \
yarn \
&& ( echo 'install: --no-document' ; echo 'update: --no-document' ) >>/etc/gemrc
COPY Gemfile* ./
RUN bundle config build.nokogiri --use-system-libraries \
&& bundle config set --local deployment 'true' without 'development:test' \
&& bundle install -j4 \
&& rm -rf vendor/bundle/ruby/*/cache \
&& find vendor/bundle/ruby/*/gems/ \( -name '*.c' -o -name '*.o' \) -delete
COPY . ./
FROM base
ENV RAILS_ENV=production RAILS_LOG_TO_STDOUT=true
ARG VERSION_CODE
ENV VERSION_CODE=${VERSION_CODE}
COPY --from=builder $RAILS_ROOT $RAILS_ROOT
EXPOSE 80
RUN chmod +x bin/start
CMD [ "bin/start" ]