60 lines
1.6 KiB
YAML
60 lines
1.6 KiB
YAML
volumes:
|
|
web:
|
|
mongo:
|
|
redis:
|
|
mongo-init-replica:
|
|
|
|
services:
|
|
web:
|
|
image: sharelatex/sharelatex:4.2.3@sha256:6c6498de22775f1227eed7cf472c764aa851f0fe5b9e640d989ea8a90837159e
|
|
depends_on:
|
|
mongo:
|
|
condition: service_healthy
|
|
redis:
|
|
condition: service_started
|
|
links:
|
|
- mongo
|
|
- redis
|
|
ports:
|
|
- 8020:80
|
|
volumes:
|
|
- ./data/sharelatex:/var/lib/sharelatex
|
|
environment:
|
|
SHARELATEX_APP_NAME: Overleaf
|
|
SHARELATEX_MONGO_URL: mongodb://mongo/sharelatex
|
|
SHARELATEX_REDIS_HOST: redis
|
|
REDIS_HOST: redis
|
|
ENABLED_LINKED_FILE_TYPES: "project_file,project_output_file"
|
|
ENABLE_CONVERSIONS: "true"
|
|
EMAIL_CONFIRMATION_DISABLED: "true"
|
|
TEXMFVAR: /var/lib/sharelatex/tmp/texmf-var
|
|
|
|
mongo:
|
|
image: mongo:4.4@sha256:52c42cbab240b3c5b1748582cc13ef46d521ddacae002bbbda645cebed270ec0
|
|
command: "--replSet overleaf"
|
|
expose:
|
|
- 27017
|
|
volumes:
|
|
- ./data/mongo:/data/db
|
|
healthcheck:
|
|
test: echo 'db.stats().ok' | mongo localhost:27017/test --quiet
|
|
interval: 10s
|
|
timeout: 10s
|
|
retries: 5
|
|
|
|
redis:
|
|
image: redis:6.2@sha256:5610a8ffeaf386ecc7b6c8f070662a7a9d01bc7eafe237152a7d16e05b84afc9
|
|
expose:
|
|
- 6379
|
|
volumes:
|
|
- ./data/redis:/data
|
|
|
|
mongo-init-replica:
|
|
image: mongo:4.4
|
|
depends_on:
|
|
- mongo
|
|
entrypoint: >
|
|
bash -c "
|
|
until mongo --host mongo --eval 'print(\"waiting for mongo\")'; do sleep 2; done;
|
|
mongo --host mongo --eval 'rs.initiate({_id: \"overleaf\", members: [{_id: 0, host: \"mongo:27017\"}]})'"
|
|
restart: "on-failure" |