78 lines
2.3 KiB
Docker
78 lines
2.3 KiB
Docker
FROM ubuntu:18.04
|
|
|
|
#ARG DEBIAN_FRONTEND=noninteractive
|
|
|
|
# Install essential Linux packages
|
|
RUN apt-get update -qq && apt-get install -y build-essential git curl wget g++ libreadline6-dev libreadline-dev zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 autoconf libgdbm-dev libncurses5-dev automake libtool bison pkg-config libffi-dev liblzma-dev zlib1g-dev libgmp-dev libgmp3-dev libpq-dev postgresql-client openssl libxml2-dev libxslt-dev nodejs protobuf-compiler protobuf-c-compiler shared-mime-info
|
|
|
|
#Install nodejs
|
|
# RUN curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
|
|
# RUN apt-get install -y nodejs
|
|
|
|
#Install ruby
|
|
RUN wget -O ruby-install-0.8.3.tar.gz https://github.com/postmodern/ruby-install/archive/v0.8.3.tar.gz \
|
|
&& tar -xzvf ruby-install-0.8.3.tar.gz \
|
|
&& cd ruby-install-0.8.3/ \
|
|
&& make install
|
|
|
|
RUN ruby-install --system ruby 2.4.1
|
|
|
|
# installs a old version of protocol buffers. hard to build these days.
|
|
RUN curl https://jamjam:blueberryjam@int.jamkazam.com/stuff/protobuf-2.4.1.tgz -o /tmp/protobuf-2.4.1.tgz && \
|
|
cd /tmp && \
|
|
tar -xvzf protobuf-2.4.1.tgz && \
|
|
cp protobuf-2.4.1/usr/lib/* /usr/lib/ && \
|
|
cp protobuf-2.4.1/usr/bin/protoc /usr/bin/protoc
|
|
|
|
#setup app
|
|
ARG RAILS_ENV
|
|
ARG RACK_ENV
|
|
ARG BUNDLER_VERSION
|
|
ARG AWS_KEY
|
|
ARG AWS_SECRET
|
|
ARG POSTGRES_USER
|
|
ARG POSTGRES_PASSWORD
|
|
ARG POSTGRES_DB
|
|
ARG INIT_BUILD=0
|
|
ARG LOCAL_DEV
|
|
|
|
#ARG GEM_PATH
|
|
#ARG GEM_HOME
|
|
|
|
ENV RAILS_ENV $RAILS_ENV
|
|
ENV RACK_ENV $RACK_ENV
|
|
ENV BUNDLER_VERSION $BUNDLER_VERSION
|
|
ENV POSTGRES_USER $POSTGRES_USER
|
|
ENV POSTGRES_PASSWORD $POSTGRES_PASSWORD
|
|
ENV POSTGRES_DB $POSTGRES_DB
|
|
ENV AWS_KEY ${AWS_SECRET}
|
|
ENV AWS_SECRET ${AWS_SECRET}
|
|
ENV INIT_BUILD ${INIT_BUILD}
|
|
ENV LOCAL_DEV ${LOCAL_DEV}
|
|
|
|
#ENV GEM_PATH ${GEM_PATH}
|
|
#ENV GEM_HOME ${GEM_HOME}
|
|
|
|
|
|
ENV APP_ROOT /app
|
|
|
|
# install our old version of bundler
|
|
RUN gem install bundler -v '1.17.3'
|
|
|
|
# get a latest bundler installed too
|
|
RUN gem install bundler -v '2.1.4'
|
|
# Set our working directory inside the image
|
|
WORKDIR $APP_ROOT
|
|
|
|
# Copy the application into place
|
|
COPY . ./
|
|
|
|
# Set bundle config
|
|
RUN bundle config build.nokogiri --use-system-libraries
|
|
RUN bundle config int.jamkazam.com jamjam:blueberryjam
|
|
|
|
RUN echo 'export AWS_KEY="${AWS_KEY}"' >> ~/.bashrc
|
|
RUN echo 'export AWS_SECRET="${AWS_SECRET}"' >> ~/.bashrc
|
|
|
|
#ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD [ "./setup.sh" ] |