2024-09-28 11:50:07 -05:00
|
|
|
FROM ruby:3.3.5-bookworm
|
2016-07-07 17:47:47 -05:00
|
|
|
|
2021-05-09 17:38:08 -05:00
|
|
|
RUN curl -sL https://deb.nodesource.com/setup_lts.x | bash - && \
|
2020-05-02 14:12:04 -05:00
|
|
|
apt-get update && apt-get dist-upgrade -y && \
|
|
|
|
apt-get install -y \
|
|
|
|
nodejs \
|
|
|
|
nginx && \
|
2020-01-18 18:07:07 -06:00
|
|
|
apt-get autoremove -y && apt-get clean && rm -rf /var/lib/apt/lists/*
|
2018-03-30 14:31:09 -05:00
|
|
|
|
2024-10-18 14:42:04 -05:00
|
|
|
RUN gem update --no-document --system && gem install bundler --no-document && corepack enable
|
2016-01-18 20:50:19 -06:00
|
|
|
|
|
|
|
# Install nginx config files
|
|
|
|
RUN rm /etc/nginx/sites-enabled/default
|
|
|
|
ADD docker/nginx_server.conf /etc/nginx/sites-enabled/parsley.conf
|
|
|
|
|
2020-05-02 14:12:04 -05:00
|
|
|
# Add scripts
|
|
|
|
ADD docker/bin/* /usr/local/bin/
|
|
|
|
RUN chmod +x /usr/local/bin/entrypoint.sh /usr/local/bin/nginx_service.sh /usr/local/bin/rails_service.sh
|
2016-01-19 17:26:23 -06:00
|
|
|
|
2016-01-18 20:50:19 -06:00
|
|
|
# Set Default RAILS_ENV
|
2016-07-08 12:56:40 -05:00
|
|
|
ENV RAILS_ENV docker
|
2016-01-18 20:50:19 -06:00
|
|
|
|
|
|
|
# Setup directory and install gems
|
2020-05-02 14:12:04 -05:00
|
|
|
RUN mkdir -p /parsley
|
|
|
|
WORKDIR /parsley
|
2016-01-18 20:50:19 -06:00
|
|
|
|
2018-03-30 14:31:09 -05:00
|
|
|
COPY Gemfile* ./
|
2020-05-02 14:12:04 -05:00
|
|
|
RUN bundle install
|
2018-03-30 14:31:09 -05:00
|
|
|
|
2024-10-18 10:18:16 -05:00
|
|
|
COPY package.json yarn.lock ./
|
2024-10-18 14:50:37 -05:00
|
|
|
RUN yarn install --immutable
|
2018-03-30 14:31:09 -05:00
|
|
|
|
2020-05-02 14:12:04 -05:00
|
|
|
COPY . .
|
2016-01-18 20:50:19 -06:00
|
|
|
|
|
|
|
# Compile assets
|
2021-05-09 17:38:08 -05:00
|
|
|
RUN env RAILS_ENV=production bundle exec rails webpacker:clobber webpacker:compile
|
2016-01-18 20:50:19 -06:00
|
|
|
|
2020-05-04 17:59:11 -05:00
|
|
|
ENV PORT=80
|
|
|
|
EXPOSE 80
|
2020-05-02 14:12:04 -05:00
|
|
|
ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]
|