99 lines
2.9 KiB
YAML
99 lines
2.9 KiB
YAML
version: '3.7'
|
||
|
||
volumes:
|
||
nextcloud-db:
|
||
name: docker_nextcloud-db-23
|
||
nextcloud-data:
|
||
name: docker_nextcloud
|
||
nextcloud:
|
||
name: docker_nextcloud-conf
|
||
onlyoffice-data:
|
||
name: docker_onlyoffice-data
|
||
# onlyoffice-log:
|
||
# name: docker_onlyoffice-log
|
||
|
||
networks:
|
||
nextcloud:
|
||
proxy:
|
||
external: true
|
||
|
||
services:
|
||
nextcloud-app:
|
||
image: nextcloud-cron:23.0.11
|
||
build: .
|
||
container_name: nextcloud-app
|
||
restart: unless-stopped
|
||
extra_hosts :
|
||
office.oasis21.org : 172.16.7.10
|
||
volumes:
|
||
- nextcloud:/var/www/html
|
||
- nextcloud-data:/var/www/html/data
|
||
environment:
|
||
- "TZ=Europe/Paris"
|
||
- REDIS_HOST=redis
|
||
env_file: ./secrets/librezo.secrets
|
||
depends_on:
|
||
- nextcloud-db
|
||
- redis
|
||
networks:
|
||
- nextcloud
|
||
- proxy
|
||
labels:
|
||
traefik.http.routers.nextcloud-web.entrypoints: websecure
|
||
traefik.http.routers.nextcloud-web.rule: Host(`cloud.oasis21.org`)
|
||
traefik.http.services.nextcloud-web.loadbalancer.server.port: 80
|
||
traefik.enable: true
|
||
# https://docs.nextcloud.com/server/16/admin_manual/configuration_server/reverse_proxy_configuration.html
|
||
traefik.http.routers.nextcloud-web.middlewares: nextcloud-web@docker, allowFrameAndCORS@file
|
||
traefik.http.middlewares.nextcloud-web.redirectregex.permanent: true
|
||
traefik.http.middlewares.nextcloud-web.redirectregex.regex: "https://(.*)/.well-known/(card|cal)dav"
|
||
traefik.http.middlewares.nextcloud-web.redirectregex.replacement: "https://$${1}/remote.php/dav/"
|
||
|
||
redis:
|
||
image: redis
|
||
image: 'bitnami/redis:7.0.4'
|
||
container_name: redis
|
||
restart: unless-stopped
|
||
environment:
|
||
- "TZ=Europe/Paris"
|
||
- ALLOW_EMPTY_PASSWORD=yes
|
||
env_file: ./secrets/librezo.secrets
|
||
networks:
|
||
- nextcloud
|
||
|
||
|
||
nextcloud-db:
|
||
image: postgres:11.17-bullseye
|
||
container_name: nextcloud-db
|
||
volumes:
|
||
- nextcloud-db:/var/lib/postgresql/data
|
||
networks:
|
||
- nextcloud
|
||
env_file: ./secrets/librezo.secrets
|
||
environment:
|
||
- "TZ=Europe/Paris"
|
||
restart: unless-stopped
|
||
|
||
onlyoffice:
|
||
container_name: onlyoffice
|
||
image: onlyoffice_unlimited:7.2.1
|
||
restart: unless-stopped
|
||
extra_hosts :
|
||
cloud.oasis21.org : 172.16.7.11
|
||
environment:
|
||
- JWT_ENABLED=true
|
||
- JWT_SECRET=MvaG9zdHMgCnN1ZG8gbmFubyAvZXRjL2hvc3RzIApzY3AgVMOpbMOpY
|
||
volumes:
|
||
- onlyoffice-data:/var/www/onlyoffice/Data
|
||
#- onlyoffice-log:/var/log/onlyoffice
|
||
labels:
|
||
traefik.http.routers.onlyoffice.entrypoints: websecure
|
||
traefik.http.routers.onlyoffice.rule: Host(`office.oasis21.org`)
|
||
traefik.http.services.onlyoffice.loadbalancer.server.port: 80
|
||
traefik.enable: true
|
||
traefik.http.routers.onlyoffice.middlewares: allowFrameAndCORS@file, onlyoffice-sslheaders
|
||
traefik.http.middlewares.onlyoffice-sslheaders.headers.customrequestheaders.X-Forwarded-Proto: "https"
|
||
networks:
|
||
- nextcloud
|
||
- proxy
|