2019-08-07 08:47:05 +00:00
|
|
|
|
# ---------------------------------------------
|
|
|
|
|
# Overleaf Community Edition (overleaf/overleaf)
|
|
|
|
|
# ---------------------------------------------
|
2017-02-22 09:20:07 +00:00
|
|
|
|
|
2017-09-08 08:09:42 +00:00
|
|
|
|
FROM sharelatex/sharelatex-base:latest
|
2015-02-06 17:01:50 +00:00
|
|
|
|
|
2017-02-22 09:48:34 +00:00
|
|
|
|
ENV baseDir .
|
|
|
|
|
|
2019-08-07 08:47:05 +00:00
|
|
|
|
|
|
|
|
|
# Install app settings files
|
|
|
|
|
# --------------------------
|
2016-09-21 12:47:07 +00:00
|
|
|
|
ADD ${baseDir}/settings.coffee /etc/sharelatex/settings.coffee
|
|
|
|
|
ENV SHARELATEX_CONFIG /etc/sharelatex/settings.coffee
|
|
|
|
|
|
2016-08-05 10:59:39 +00:00
|
|
|
|
|
2019-08-07 08:47:05 +00:00
|
|
|
|
# Checkout Overleaf Community Edition repo
|
|
|
|
|
# ----------------------------------------
|
|
|
|
|
RUN git clone https://github.com/overleaf/overleaf.git \
|
|
|
|
|
--depth 1 /var/www/sharelatex
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Install dependencies needed to run configuration scripts
|
|
|
|
|
# --------------------------------------------------------
|
|
|
|
|
ADD ${baseDir}/package.json /var/www/package.json
|
|
|
|
|
ADD ${baseDir}/git-revision.js /var/www/git-revision.js
|
|
|
|
|
RUN cd /var/www && npm install
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Replace overleaf/config/services.js with the list of available
|
|
|
|
|
# services in Overleaf Community Edition
|
|
|
|
|
# --------------------------------------------------------------
|
|
|
|
|
ADD ${baseDir}/services.js /var/www/sharelatex/config/services.js
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Checkout services
|
|
|
|
|
# -----------------
|
|
|
|
|
RUN cd /var/www/sharelatex && \
|
|
|
|
|
npm install && grunt install;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# install and compile services
|
|
|
|
|
# ----------------------------
|
|
|
|
|
RUN bash -c 'cd /var/www/sharelatex && source ./bin/install-services'
|
|
|
|
|
RUN bash -c 'cd /var/www/sharelatex && source ./bin/compile-services'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Change application ownership to www-data
|
|
|
|
|
# ----------------------------------------
|
|
|
|
|
RUN chown -R www-data:www-data /var/www/sharelatex;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Copy runit service startup scripts to its location
|
|
|
|
|
# --------------------------------------------------
|
|
|
|
|
ADD ${baseDir}/runit /etc/service
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Configure nginx
|
|
|
|
|
# ---------------
|
2016-08-05 10:59:39 +00:00
|
|
|
|
RUN rm /etc/nginx/sites-enabled/default
|
|
|
|
|
ADD ${baseDir}/nginx/nginx.conf /etc/nginx/nginx.conf
|
|
|
|
|
ADD ${baseDir}/nginx/sharelatex.conf /etc/nginx/sites-enabled/sharelatex.conf
|
|
|
|
|
|
|
|
|
|
|
2019-08-07 08:47:05 +00:00
|
|
|
|
# Configure log rotation
|
|
|
|
|
# ----------------------
|
|
|
|
|
ADD ${baseDir}/logrotate/sharelatex /etc/logrotate.d/sharelatex
|
2016-08-05 10:59:39 +00:00
|
|
|
|
|
2015-02-06 17:01:50 +00:00
|
|
|
|
|
2019-08-07 08:47:05 +00:00
|
|
|
|
# Copy Phusion Image startup scripts to its location
|
|
|
|
|
# --------------------------------------------------
|
|
|
|
|
COPY ${baseDir}/init_scripts/ /etc/my_init.d/
|
2016-04-21 00:55:47 +00:00
|
|
|
|
|
|
|
|
|
|
2019-08-07 08:47:05 +00:00
|
|
|
|
# Stores the version installed for each service
|
|
|
|
|
# ---------------------------------------------
|
2016-04-21 00:55:47 +00:00
|
|
|
|
RUN cd /var/www && node git-revision > revisions.txt
|
2019-08-07 08:47:05 +00:00
|
|
|
|
|
2016-05-26 10:01:21 +00:00
|
|
|
|
|
2015-02-09 16:18:58 +00:00
|
|
|
|
EXPOSE 80
|
|
|
|
|
|
2016-05-31 14:16:31 +00:00
|
|
|
|
WORKDIR /
|
|
|
|
|
|
2015-02-18 17:08:41 +00:00
|
|
|
|
ENTRYPOINT ["/sbin/my_init"]
|
2016-05-31 14:15:24 +00:00
|
|
|
|
|