73 lines
1.9 KiB
YAML
73 lines
1.9 KiB
YAML
version: '3.2'
|
|
|
|
services:
|
|
db:
|
|
image: postgres:${postgres_version:-14}
|
|
restart: unless-stopped
|
|
environment:
|
|
- POSTGRES_DB=nextcloud
|
|
- POSTGRES_USER=postgres
|
|
- POSTGRES_PASSWORD=postgres
|
|
volumes:
|
|
- postgres_data:/var/lib/postgresql/data
|
|
networks:
|
|
- database
|
|
|
|
app:
|
|
image: nextcloud:${nextcloud_version:-latest}
|
|
restart: unless-stopped
|
|
volumes:
|
|
- /media/nextcloud/nextcloud_data:/var/www/html/data
|
|
- /media/nextcloud/nextcloud_config:/var/www/html/config
|
|
- /media/nextcloud/nextcloud_apps:/var/www/html/custom_apps
|
|
environment:
|
|
- VIRTUAL_HOST=cloud.jfreudenberger.de # the domain where the service should be reached
|
|
- VIRTUAL_PORT=80 # the port the service listens in the container
|
|
- LETSENCRYPT_HOST=cloud.jfreudenberger.de # the same domain as VIRTUAL_HOST; this enables ssl
|
|
depends_on:
|
|
- db
|
|
networks:
|
|
- webproxy
|
|
- database
|
|
- onlyoffice
|
|
- redis
|
|
- smtp_relay
|
|
|
|
onlyoffice:
|
|
image: onlyoffice/documentserver:${onlyoffice_version:-latest}
|
|
restart: unless-stopped
|
|
environment:
|
|
- VIRTUAL_HOST=onlyoffice.jfreudenberger.de # the domain where the service should be reached
|
|
- VIRTUAL_PORT=80 # the port the service listens in the container
|
|
- LETSENCRYPT_HOST=onlyoffice.jfreudenberger.de # the same domain as VIRTUAL_HOST; this enables ssl
|
|
- JWT_ENABLED=${ONLYOFFICE_JWT_ENABLED:-false}
|
|
- JWT_SECRET=${ONLYOFFICE_JWT_SECRET}
|
|
volumes:
|
|
- document_data:/var/www/onlyoffice/Data
|
|
- document_log:/var/log/onlyoffice
|
|
networks:
|
|
- onlyoffice
|
|
- webproxy
|
|
|
|
redis:
|
|
image: redis:${redis_version:-latest}
|
|
restart: unless-stopped
|
|
networks:
|
|
- redis
|
|
|
|
networks:
|
|
database:
|
|
onlyoffice:
|
|
redis:
|
|
webproxy:
|
|
external: true
|
|
name: webproxy
|
|
smtp_relay:
|
|
external: true
|
|
name: smtp_relay
|
|
|
|
volumes:
|
|
postgres_data:
|
|
document_data:
|
|
document_log:
|
|
|