mirror of
https://git.unistra.fr/aius/root/ldap-overleaf-sl.git
synced 2025-05-04 19:55:26 +02:00
Bump sharelatex to v4.1.1
- bump sharelatex - init mongodb replset - format docker-compose.yml
This commit is contained in:
parent
c4775c7d7c
commit
a99e70f3c4
3 changed files with 363 additions and 331 deletions
|
@ -1,4 +1,4 @@
|
||||||
version: '2.2'
|
version: "2.2"
|
||||||
services:
|
services:
|
||||||
sharelatex:
|
sharelatex:
|
||||||
restart: always
|
restart: always
|
||||||
|
@ -36,7 +36,7 @@ services:
|
||||||
# SHARELATEX_EMAIL_AWS_SES_SECRET_KEY:
|
# SHARELATEX_EMAIL_AWS_SES_SECRET_KEY:
|
||||||
SHARELATEX_EMAIL_SMTP_HOST: smtp.${MYDOMAIN}
|
SHARELATEX_EMAIL_SMTP_HOST: smtp.${MYDOMAIN}
|
||||||
SHARELATEX_EMAIL_SMTP_PORT: 587
|
SHARELATEX_EMAIL_SMTP_PORT: 587
|
||||||
SHARELATEX_EMAIL_SMTP_SECURE: 'false'
|
SHARELATEX_EMAIL_SMTP_SECURE: "false"
|
||||||
# SHARELATEX_EMAIL_SMTP_USER:
|
# SHARELATEX_EMAIL_SMTP_USER:
|
||||||
# SHARELATEX_EMAIL_SMTP_PASS:
|
# SHARELATEX_EMAIL_SMTP_PASS:
|
||||||
# SHARELATEX_EMAIL_SMTP_TLS_REJECT_UNAUTH: true
|
# SHARELATEX_EMAIL_SMTP_TLS_REJECT_UNAUTH: true
|
||||||
|
@ -48,11 +48,11 @@ services:
|
||||||
# https://github.com/overleaf/overleaf/issues/628
|
# https://github.com/overleaf/overleaf/issues/628
|
||||||
# https://github.com/overleaf/web/issues/367
|
# https://github.com/overleaf/web/issues/367
|
||||||
# Fixed in 2.0.2 (Release date: 2019-11-26)
|
# Fixed in 2.0.2 (Release date: 2019-11-26)
|
||||||
SHARELATEX_ALLOW_PUBLIC_ACCESS: 'true'
|
SHARELATEX_ALLOW_PUBLIC_ACCESS: "true"
|
||||||
SHARELATEX_ALLOW_ANONYMOUS_READ_AND_WRITE_SHARING: 'true'
|
SHARELATEX_ALLOW_ANONYMOUS_READ_AND_WRITE_SHARING: "true"
|
||||||
|
|
||||||
SHARELATEX_SECURE_COOKIE: 'true'
|
SHARELATEX_SECURE_COOKIE: "true"
|
||||||
SHARELATEX_BEHIND_PROXY: 'true'
|
SHARELATEX_BEHIND_PROXY: "true"
|
||||||
|
|
||||||
LDAP_SERVER: ldaps://LDAPSERVER:636
|
LDAP_SERVER: ldaps://LDAPSERVER:636
|
||||||
LDAP_BASE: ou=people,dc=DOMAIN,dc=TLD
|
LDAP_BASE: ou=people,dc=DOMAIN,dc=TLD
|
||||||
|
@ -68,18 +68,18 @@ services:
|
||||||
# LDAP_BIND_PW:
|
# LDAP_BIND_PW:
|
||||||
|
|
||||||
# Only allow users matching LDAP_USER_FILTER
|
# Only allow users matching LDAP_USER_FILTER
|
||||||
LDAP_USER_FILTER: '(memberof=cn=GROUPNAME,ou=groups,dc=DOMAIN,dc=TLD)'
|
LDAP_USER_FILTER: "(memberof=cn=GROUPNAME,ou=groups,dc=DOMAIN,dc=TLD)"
|
||||||
|
|
||||||
# If user is in ADMIN_GROUP on user creation (first login) isAdmin is set to true.
|
# If user is in ADMIN_GROUP on user creation (first login) isAdmin is set to true.
|
||||||
# Admin Users can invite external (non ldap) users. This feature makes only sense
|
# Admin Users can invite external (non ldap) users. This feature makes only sense
|
||||||
# when ALLOW_EMAIL_LOGIN is set to 'true'. Additionally admins can send
|
# when ALLOW_EMAIL_LOGIN is set to 'true'. Additionally admins can send
|
||||||
# system wide messages.
|
# system wide messages.
|
||||||
LDAP_ADMIN_GROUP_FILTER: '(memberof=cn=ADMINGROUPNAME,ou=groups,dc=DOMAIN,dc=TLD)'
|
LDAP_ADMIN_GROUP_FILTER: "(memberof=cn=ADMINGROUPNAME,ou=groups,dc=DOMAIN,dc=TLD)"
|
||||||
ALLOW_EMAIL_LOGIN: 'true'
|
ALLOW_EMAIL_LOGIN: "true"
|
||||||
|
|
||||||
# All users in the LDAP_CONTACT_FILTER are loaded from the ldap server into contacts.
|
# All users in the LDAP_CONTACT_FILTER are loaded from the ldap server into contacts.
|
||||||
LDAP_CONTACT_FILTER: '(memberof=cn=GROUPNAME,ou=groups,dc=DOMAIN,dc=TLD)'
|
LDAP_CONTACT_FILTER: "(memberof=cn=GROUPNAME,ou=groups,dc=DOMAIN,dc=TLD)"
|
||||||
LDAP_CONTACTS: 'false'
|
LDAP_CONTACTS: "false"
|
||||||
|
|
||||||
# Same property, unfortunately with different names in
|
# Same property, unfortunately with different names in
|
||||||
# different locations
|
# different locations
|
||||||
|
@ -87,10 +87,10 @@ services:
|
||||||
REDIS_HOST: redis
|
REDIS_HOST: redis
|
||||||
REDIS_PORT: 6379
|
REDIS_PORT: 6379
|
||||||
|
|
||||||
ENABLED_LINKED_FILE_TYPES: 'url,project_file'
|
ENABLED_LINKED_FILE_TYPES: "url,project_file"
|
||||||
|
|
||||||
# Enables Thumbnail generation using ImageMagick
|
# Enables Thumbnail generation using ImageMagick
|
||||||
ENABLE_CONVERSIONS: 'true'
|
ENABLE_CONVERSIONS: "true"
|
||||||
|
|
||||||
mongo:
|
mongo:
|
||||||
restart: always
|
restart: always
|
||||||
|
@ -105,6 +105,24 @@ services:
|
||||||
interval: 10s
|
interval: 10s
|
||||||
timeout: 10s
|
timeout: 10s
|
||||||
retries: 5
|
retries: 5
|
||||||
|
command: "--replSet overleaf"
|
||||||
|
|
||||||
|
# See also: https://github.com/overleaf/overleaf/issues/1120
|
||||||
|
mongoinit:
|
||||||
|
image: mongo:4.4
|
||||||
|
# this container will exit after executing the command
|
||||||
|
restart: "no"
|
||||||
|
depends_on:
|
||||||
|
mongo:
|
||||||
|
condition: service_healthy
|
||||||
|
entrypoint:
|
||||||
|
[
|
||||||
|
"mongo",
|
||||||
|
"--host",
|
||||||
|
"mongo:27017",
|
||||||
|
"--eval",
|
||||||
|
'rs.initiate({ _id: "overleaf", members: [ { _id: 0, host: "mongo:27017" } ] })',
|
||||||
|
]
|
||||||
|
|
||||||
redis:
|
redis:
|
||||||
restart: always
|
restart: always
|
||||||
|
@ -120,7 +138,6 @@ services:
|
||||||
timeout: 5s
|
timeout: 5s
|
||||||
retries: 5
|
retries: 5
|
||||||
|
|
||||||
|
|
||||||
simple-certbot:
|
simple-certbot:
|
||||||
restart: always
|
restart: always
|
||||||
image: certbot/certbot
|
image: certbot/certbot
|
||||||
|
@ -138,5 +155,3 @@ services:
|
||||||
trap exit TERM;\
|
trap exit TERM;\
|
||||||
certbot certonly --standalone -d ${MYDOMAIN} --agree-tos -m ${MYMAIL} -n ; \
|
certbot certonly --standalone -d ${MYDOMAIN} --agree-tos -m ${MYMAIL} -n ; \
|
||||||
while :; do certbot renew; sleep 240h & wait $${!}; done;
|
while :; do certbot renew; sleep 240h & wait $${!}; done;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
version: '2.2'
|
version: "2.2"
|
||||||
services:
|
services:
|
||||||
traefik:
|
traefik:
|
||||||
image: traefik:latest
|
image: traefik:latest
|
||||||
|
@ -118,7 +118,7 @@ services:
|
||||||
SHARELATEX_EMAIL_FROM_ADDRESS: "noreply@${MYDOMAIN}"
|
SHARELATEX_EMAIL_FROM_ADDRESS: "noreply@${MYDOMAIN}"
|
||||||
SHARELATEX_EMAIL_SMTP_HOST: smtp.${MYDOMAIN}
|
SHARELATEX_EMAIL_SMTP_HOST: smtp.${MYDOMAIN}
|
||||||
SHARELATEX_EMAIL_SMTP_PORT: 587
|
SHARELATEX_EMAIL_SMTP_PORT: 587
|
||||||
SHARELATEX_EMAIL_SMTP_SECURE: 'false'
|
SHARELATEX_EMAIL_SMTP_SECURE: "false"
|
||||||
# SHARELATEX_EMAIL_SMTP_USER:
|
# SHARELATEX_EMAIL_SMTP_USER:
|
||||||
# SHARELATEX_EMAIL_SMTP_PASS:
|
# SHARELATEX_EMAIL_SMTP_PASS:
|
||||||
# SHARELATEX_EMAIL_SMTP_TLS_REJECT_UNAUTH: true
|
# SHARELATEX_EMAIL_SMTP_TLS_REJECT_UNAUTH: true
|
||||||
|
@ -130,11 +130,11 @@ services:
|
||||||
# https://github.com/overleaf/overleaf/issues/628
|
# https://github.com/overleaf/overleaf/issues/628
|
||||||
# https://github.com/overleaf/web/issues/367
|
# https://github.com/overleaf/web/issues/367
|
||||||
# Fixed in 2.0.2 (Release date: 2019-11-26)
|
# Fixed in 2.0.2 (Release date: 2019-11-26)
|
||||||
SHARELATEX_ALLOW_PUBLIC_ACCESS: 'true'
|
SHARELATEX_ALLOW_PUBLIC_ACCESS: "true"
|
||||||
SHARELATEX_ALLOW_ANONYMOUS_READ_AND_WRITE_SHARING: 'true'
|
SHARELATEX_ALLOW_ANONYMOUS_READ_AND_WRITE_SHARING: "true"
|
||||||
|
|
||||||
SHARELATEX_SECURE_COOKIE: 'true'
|
SHARELATEX_SECURE_COOKIE: "true"
|
||||||
SHARELATEX_BEHIND_PROXY: 'true'
|
SHARELATEX_BEHIND_PROXY: "true"
|
||||||
|
|
||||||
LDAP_SERVER: ldaps://LDAPSERVER:636
|
LDAP_SERVER: ldaps://LDAPSERVER:636
|
||||||
LDAP_BASE: ou=people,dc=DOMAIN,dc=TLD
|
LDAP_BASE: ou=people,dc=DOMAIN,dc=TLD
|
||||||
|
@ -150,18 +150,18 @@ services:
|
||||||
# LDAP_BIND_PW:
|
# LDAP_BIND_PW:
|
||||||
|
|
||||||
# Only allow users matching LDAP_USER_FILTER
|
# Only allow users matching LDAP_USER_FILTER
|
||||||
LDAP_USER_FILTER: '(memberof=cn=GROUPNAME,ou=groups,dc=DOMAIN,dc=TLD)'
|
LDAP_USER_FILTER: "(memberof=cn=GROUPNAME,ou=groups,dc=DOMAIN,dc=TLD)"
|
||||||
|
|
||||||
# If user is in ADMIN_GROUP on user creation (first login) isAdmin is set to true.
|
# If user is in ADMIN_GROUP on user creation (first login) isAdmin is set to true.
|
||||||
# Admin Users can invite external (non ldap) users. This feature makes only sense
|
# Admin Users can invite external (non ldap) users. This feature makes only sense
|
||||||
# when ALLOW_EMAIL_LOGIN is set to 'true'. Additionally admins can send
|
# when ALLOW_EMAIL_LOGIN is set to 'true'. Additionally admins can send
|
||||||
# system wide messages.
|
# system wide messages.
|
||||||
LDAP_ADMIN_GROUP_FILTER: '(memberof=cn=ADMINGROUPNAME,ou=groups,dc=DOMAIN,dc=TLD)'
|
LDAP_ADMIN_GROUP_FILTER: "(memberof=cn=ADMINGROUPNAME,ou=groups,dc=DOMAIN,dc=TLD)"
|
||||||
ALLOW_EMAIL_LOGIN: 'true'
|
ALLOW_EMAIL_LOGIN: "true"
|
||||||
|
|
||||||
# All users in the LDAP_CONTACT_FILTER are loaded from the ldap server into contacts.
|
# All users in the LDAP_CONTACT_FILTER are loaded from the ldap server into contacts.
|
||||||
LDAP_CONTACT_FILTER: '(memberof=cn=GROUPNAME,ou=groups,dc=DOMAIN,dc=TLD)'
|
LDAP_CONTACT_FILTER: "(memberof=cn=GROUPNAME,ou=groups,dc=DOMAIN,dc=TLD)"
|
||||||
LDAP_CONTACTS: 'false'
|
LDAP_CONTACTS: "false"
|
||||||
|
|
||||||
# Same property, unfortunately with different names in
|
# Same property, unfortunately with different names in
|
||||||
# different locations
|
# different locations
|
||||||
|
@ -169,10 +169,10 @@ services:
|
||||||
REDIS_HOST: redis
|
REDIS_HOST: redis
|
||||||
REDIS_PORT: 6379
|
REDIS_PORT: 6379
|
||||||
|
|
||||||
ENABLED_LINKED_FILE_TYPES: 'url,project_file'
|
ENABLED_LINKED_FILE_TYPES: "url,project_file"
|
||||||
|
|
||||||
# Enables Thumbnail generation using ImageMagick
|
# Enables Thumbnail generation using ImageMagick
|
||||||
ENABLE_CONVERSIONS: 'true'
|
ENABLE_CONVERSIONS: "true"
|
||||||
|
|
||||||
mongo:
|
mongo:
|
||||||
restart: always
|
restart: always
|
||||||
|
@ -195,6 +195,24 @@ services:
|
||||||
- "traefik.tcp.routers.mongodb.entrypoints=mongo"
|
- "traefik.tcp.routers.mongodb.entrypoints=mongo"
|
||||||
networks:
|
networks:
|
||||||
- web
|
- web
|
||||||
|
command: "--replSet overleaf"
|
||||||
|
|
||||||
|
# See also: https://github.com/overleaf/overleaf/issues/1120
|
||||||
|
mongoinit:
|
||||||
|
image: mongo:4.4
|
||||||
|
# this container will exit after executing the command
|
||||||
|
restart: "no"
|
||||||
|
depends_on:
|
||||||
|
mongo:
|
||||||
|
condition: service_healthy
|
||||||
|
entrypoint:
|
||||||
|
[
|
||||||
|
"mongo",
|
||||||
|
"--host",
|
||||||
|
"mongo:27017",
|
||||||
|
"--eval",
|
||||||
|
'rs.initiate({ _id: "overleaf", members: [ { _id: 0, host: "mongo:27017" } ] })',
|
||||||
|
]
|
||||||
|
|
||||||
redis:
|
redis:
|
||||||
restart: always
|
restart: always
|
||||||
|
@ -223,4 +241,3 @@ services:
|
||||||
networks:
|
networks:
|
||||||
web:
|
web:
|
||||||
external: true
|
external: true
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
FROM sharelatex/sharelatex:4.0.5
|
FROM sharelatex/sharelatex:4.1.1
|
||||||
# FROM sharelatex/sharelatex:latest
|
# FROM sharelatex/sharelatex:latest
|
||||||
# latest might not be tested
|
# latest might not be tested
|
||||||
# e.g. the AuthenticationManager.js script had to be adapted after versions 2.3.1
|
# e.g. the AuthenticationManager.js script had to be adapted after versions 2.3.1
|
||||||
|
|
Loading…
Add table
Reference in a new issue