2022-04-29 19:49:28 +08:00
|
|
|
FROM ruby:2.7.6-bullseye
|
2023-03-09 21:25:12 +08:00
|
|
|
MAINTAINER SciNote <info@scinote.net>
|
2017-03-17 17:48:20 +08:00
|
|
|
|
2022-01-07 18:20:11 +08:00
|
|
|
ARG WKHTMLTOPDF_PACKAGE_URL=https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.buster_amd64.deb
|
2019-10-17 19:30:14 +08:00
|
|
|
|
2017-03-17 17:48:20 +08:00
|
|
|
# additional dependecies
|
2019-06-05 18:52:43 +08:00
|
|
|
# libreoffice for file preview generation
|
2019-08-08 20:03:15 +08:00
|
|
|
RUN apt-get update -qq && \
|
2017-03-17 17:48:20 +08:00
|
|
|
apt-get install -y \
|
2019-07-26 00:00:24 +08:00
|
|
|
libjemalloc2 \
|
|
|
|
libssl-dev \
|
2017-03-17 17:48:20 +08:00
|
|
|
nodejs \
|
2019-08-08 20:03:15 +08:00
|
|
|
npm \
|
2018-12-11 23:26:24 +08:00
|
|
|
groff-base \
|
|
|
|
awscli \
|
2017-03-17 17:48:20 +08:00
|
|
|
postgresql-client \
|
2017-03-29 22:00:11 +08:00
|
|
|
netcat \
|
2017-03-17 17:48:20 +08:00
|
|
|
default-jre-headless \
|
2019-07-10 20:37:23 +08:00
|
|
|
poppler-utils \
|
2019-09-12 23:21:48 +08:00
|
|
|
librsvg2-2 \
|
|
|
|
libvips42 \
|
2019-07-26 00:00:24 +08:00
|
|
|
sudo graphviz --no-install-recommends \
|
2019-08-08 20:03:15 +08:00
|
|
|
libreoffice \
|
2020-03-12 03:14:29 +08:00
|
|
|
fonts-droid-fallback \
|
|
|
|
fonts-noto-mono \
|
|
|
|
fonts-wqy-microhei \
|
|
|
|
fonts-wqy-zenhei \
|
2017-04-21 15:45:30 +08:00
|
|
|
libfile-mimeinfo-perl && \
|
2019-10-17 19:30:14 +08:00
|
|
|
wget -q -O /tmp/wkhtmltox_amd64.deb $WKHTMLTOPDF_PACKAGE_URL && \
|
|
|
|
apt-get install -y /tmp/wkhtmltox_amd64.deb && \
|
|
|
|
rm /tmp/wkhtmltox_amd64.deb && \
|
2019-08-08 20:03:15 +08:00
|
|
|
npm install -g yarn && \
|
2019-09-12 23:21:48 +08:00
|
|
|
ln -s /usr/lib/x86_64-linux-gnu/libvips.so.42 /usr/lib/x86_64-linux-gnu/libvips.so && \
|
2017-03-17 17:48:20 +08:00
|
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
|
2017-04-21 21:13:20 +08:00
|
|
|
ENV RAILS_ENV production
|
2019-12-24 00:24:56 +08:00
|
|
|
ENV BUNDLE_BUILD__SASSC=--disable-march-tune-native
|
2017-04-21 21:13:20 +08:00
|
|
|
|
2017-03-28 03:04:47 +08:00
|
|
|
# install gems
|
2017-04-21 21:13:20 +08:00
|
|
|
COPY Gemfile* /usr/src/bundle/
|
|
|
|
COPY addons /usr/src/bundle/addons
|
|
|
|
WORKDIR /usr/src/bundle
|
2017-03-28 03:04:47 +08:00
|
|
|
RUN bundle install
|
|
|
|
|
2017-03-17 17:48:20 +08:00
|
|
|
# create app directory
|
|
|
|
ENV APP_HOME /usr/src/app
|
|
|
|
RUN mkdir $APP_HOME
|
|
|
|
WORKDIR $APP_HOME
|
|
|
|
COPY . .
|
2017-03-29 22:00:11 +08:00
|
|
|
RUN rm -f $APP_HOME/config/application.yml $APP_HOME/production.env
|
2017-03-17 17:48:20 +08:00
|
|
|
|
2017-04-21 21:13:20 +08:00
|
|
|
RUN DATABASE_URL=postgresql://postgres@db/scinote_production \
|
2017-03-29 22:00:11 +08:00
|
|
|
SECRET_KEY_BASE=dummy \
|
2017-04-21 21:13:20 +08:00
|
|
|
DEFACE_ENABLED=true \
|
|
|
|
bash -c "rake assets:precompile && rake deface:precompile"
|
2017-03-17 17:48:20 +08:00
|
|
|
|
|
|
|
CMD rails s -b 0.0.0.0
|