adjust some details

Signed-off-by: Simon L. <szaimen@e.mail.de>
This commit is contained in:
Simon L. 2026-01-28 10:54:47 +01:00
parent 615b90bc12
commit c534663a05
2 changed files with 59 additions and 73 deletions

View file

@ -1,16 +1,62 @@
{
"aio_services_v1": [
{
"container_name": "nextcloud-aio-overleaf",
"display_name": "Overleaf",
"documentation": "https://github.com/nextcloud/all-in-one/tree/main/community-containers/overleaf",
"image": "sharelatex/sharelatex",
"image_tag": "5",
"internal_port": "8050",
"restart": "unless-stopped",
"depends_on": [
"nextcloud-aio-overleaf-mongo",
"nextcloud-aio-overleaf-redis"
],
"ports": [
{
"ip_binding": "%APACHE_IP_BINDING%",
"port_number": "8050",
"protocol": "tcp"
}
],
"environment": [
"TZ=%TIMEZONE%",
"OVERLEAF_MONGO_URL=mongodb://nextcloud-aio-overleaf-mongo/sharelatex",
"OVERLEAF_REDIS_HOST=nextcloud-aio-overleaf-redis",
"REDIS_HOST=nextcloud-aio-overleaf-redis",
"OVERLEAF_APP_NAME='Overleaf Community Edition'",
"ENABLED_LINKED_FILE_TYPES=project_file,project_output_file",
"ENABLE_CONVERSIONS=true",
"EMAIL_CONFIRMATION_DISABLED=true",
"OVERLEAF_SITE_URL=https://overleaf.%NC_DOMAIN%",
"WEB_PORT=8050"
],
"volumes": [
{
"source": "nextcloud_aio_overleaf",
"destination": "/var/lib/overleaf",
"writeable": true
}
],
"backup_volumes": [
"nextcloud_aio_overleaf"
],
"nextcloud_exec_commands": [
"echo 'Installing integration_overleaf app...'",
"php /var/www/html/occ app:install integration_overleaf",
"php /var/www/html/occ app:enable integration_overleaf",
"echo 'Configuring overleaf url...'",
"php /var/www/html/occ config:app:set overleaf_server --value https://overleaf.%NC_DOMAIN%"
]
},
{
"container_name": "nextcloud-aio-overleaf-redis",
"display_name": "Overleaf Redis",
"documentation": "https://github.com/nextcloud/all-in-one/tree/main/community-containers/overleaf",
"image": "redis",
"image_tag": "7",
"image_tag": "6.2",
"internal_port": "6379",
"restart": "unless-stopped",
"expose": [
"6379"
],
"environment": [
"TZ=%TIMEZONE%"
],
@ -27,69 +73,28 @@
"display_name": "Overleaf MongoDB",
"documentation": "https://github.com/nextcloud/all-in-one/tree/main/community-containers/overleaf",
"image": "mongo",
"image_tag": "5",
"image_tag": "6.0",
"internal_port": "27017",
"restart": "unless-stopped",
"expose": [
"27017"
],
"environment": [
"TZ=%TIMEZONE%"
"TZ=%TIMEZONE%",
"MONGO_INITDB_DATABASE=sharelatex"
],
"command": "--replSet overleaf",
"volumes": [
{
"source": "nextcloud_aio_overleaf_mongo",
"destination": "/data/db",
"writeable": true
}
],
"backup_volumes": [
"nextcloud_aio_overleaf_mongo"
]
},
{
"container_name": "nextcloud-aio-overleaf",
"display_name": "Overleaf",
"documentation": "https://github.com/nextcloud/all-in-one/tree/main/community-containers/overleaf",
"image": "sharelatex/sharelatex",
"image_tag": "latest",
"internal_port": "80",
"restart": "unless-stopped",
"depends_on": [
"nextcloud-aio-overleaf-mongo",
"nextcloud-aio-overleaf-redis"
],
"ports": [
{
"ip_binding": "%APACHE_IP_BINDING%",
"port_number": "8050",
"protocol": "tcp"
}
],
"environment": [
"TZ=%TIMEZONE%",
"SHARELATEX_MONGO_URL=mongodb://nextcloud-aio-overleaf-mongo:27017/sharelatex",
"SHARELATEX_REDIS_HOST=nextcloud-aio-overleaf-redis",
"SHARELATEX_REDIS_PORT=6379",
"SHARELATEX_APP_NAME=Overleaf"
],
"volumes": [
{
"source": "nextcloud_aio_overleaf",
"destination": "/var/lib/sharelatex",
"writeable": true
"source": "./bin/shared/mongodb-init-replica-set.js",
"destination": "/docker-entrypoint-initdb.d/mongodb-init-replica-set.js",
"writeable": false
}
],
"backup_volumes": [
"nextcloud_aio_overleaf",
"nextcloud_aio_overleaf_mongo"
],
"nextcloud_exec_commands": [
"echo 'Installing integration_overleaf app...'",
"php /var/www/html/occ app:install integration_overleaf",
"php /var/www/html/occ app:enable integration_overleaf",
"echo 'Configuring integration_overleaf base_url...'",
"php /var/www/html/occ config:app:set integration_overleaf base_url --value 'http://%NC_DOMAIN%:8050'"
]
}
]

View file

@ -9,25 +9,6 @@ This community container deploys Overleaf CE with its required MongoDB and Redis
- The data directories for Overleaf and MongoDB are persisted and included in AIO backups automatically.
- See https://github.com/nextcloud/all-in-one/tree/main/community-containers#community-containers for how to add it to the AIO stack.
### Nextcloud integration (auto-config)
When this container is added, AIO automatically:
- Installs and enables the Nextcloud app `integration_overleaf`.
- Sets its `base_url` to `http://%NC_DOMAIN%:8050` by default (reachable when accessing the server directly).
If you publish Overleaf behind a reverse proxy on a subdomain (recommended), change the URL in Nextcloud accordingly, for example:
```bash
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php /var/www/html/occ config:app:set integration_overleaf base_url --value "https://overleaf.%NC_DOMAIN%"
```
### Data and backups
- Overleaf data: stored in the volume `nextcloud_aio_overleaf` (mounted at `/var/lib/sharelatex`).
- MongoDB data: stored in the volume `nextcloud_aio_overleaf_mongo` (mounted at `/data/db`).
- Both are included in AIO backup/restore. Redis data is ephemeral by design and not included.
### Advanced configuration
- The container uses the official `sharelatex/sharelatex` image and configures minimal required environment variables (MongoDB/Redis/Time zone). You can adjust Overleaf settings from the web UI afterwards.
- If you plan to expose Overleaf publicly, consider setting up rate-limiting and fail2ban in front of it. See the community Fail2ban container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/fail2ban
### Repository
https://github.com/overleaf/overleaf