Jakob Ackermann 6f46b2c145 [settings] produce a consistent redis config for every service (#124) 6 lat temu
..
hotfix 2bc1dc464b Added missing recaptcha configuration (#132) 6 lat temu
init_scripts 16ca8f25c4 [misc] narrow down the rw accessible directories for the run user (#119) 6 lat temu
logrotate 81d99e968f add logrotate 10 lat temu
nginx af4703a2e2 remove proxy_set_header X-Forwarded-Proto $scheme for https 9 lat temu
runit 45561cde0e Removed node6 and updated modules to Node 10 (#135) 6 lat temu
.dockerignore fad5639f55 Added debugging support to services (#113) 7 lat temu
.editorconfig 803f920b55 addressed PR comments 7 lat temu
.gitignore f100877eb7 Server Pro fixes (#109) 7 lat temu
Dockerfile 16ca8f25c4 [misc] narrow down the rw accessible directories for the run user (#119) 6 lat temu
Dockerfile-base 45561cde0e Removed node6 and updated modules to Node 10 (#135) 6 lat temu
Makefile 618c271039 Add a makefil 9 lat temu
README.md f100877eb7 Server Pro fixes (#109) 7 lat temu
git-revision.sh 3783f03a83 [misc] export all git repository revisions 6 lat temu
package.json ad30a56f0a Pin version of simple-git 8 lat temu
services.js 04579ce503 Pin contacts to branch 'sk-update-mongojs' 9 lat temu
settings.coffee 6f46b2c145 [settings] produce a consistent redis config for every service (#124) 6 lat temu

README.md

Overleaf Docker Image

This is the source for building the Overleaf community-edition docker image.

End-User Install

Please see the offical wiki for install guides

Development

This repo contains two dockerfiles, Dockerfile-base, which builds the sharelatex/sharelatex-base image, and Dockerfile which builds the sharelatex/sharelatex (or "community") image.

The Base image generally contains the basic dependencies like wget and aspell, plus texlive. We split this out because it's a pretty heavy set of dependencies, and it's nice to not have to rebuild all of that every time.

The sharelatex/sharelatex image extends the base image and adds the actual Overleaf code and services.

Use make build-base and make build-community to build these images.

How the Overleaf code gets here

This repo uses the public Overleaf repository, which used to be the main public source for the Overleaf system.

That repo is cloned down into the docker image, and a script then installs all the services.

How services run inside the container

We use the Phusion base-image (which is extended by our base image) to provide us with a VM-like container in which to run the Overleaf services. Baseimage uses the runit service manager to manage services, and we add our init-scripts from the ./runit folder.