first commit

This commit is contained in:
rnsrk 2025-04-06 22:48:06 +02:00
commit 098f59b644
3632 changed files with 518046 additions and 0 deletions

View file

@ -0,0 +1,80 @@
# Nextcloud-Stack
services:
nextcloud:
image: nextcloud:31.0-fpm
container_name: nextcloud
depends_on:
- nextcloud-redis
environment:
- NEXTCLOUD_ADMIN_USER=${NEXTCLOUD_ADMIN_USER:-admin}
- NEXTCLOUD_ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD:-admin}
- NEXTCLOUD_DEFAULT_PHONE_REGION=DE
- NEXTCLOUD_TRUSTED_DOMAINS=${NEXTCLOUD_TRUSTED_DOMAINS}
- ONLYOFFICE_JWT_SECRET=${ONLYOFFICE_JWT_SECRET}
- POSTGRES_DB=${NEXTCLOUD_DB_NAME}
- POSTGRES_HOST=${NEXTCLOUD_DB_HOST}
- POSTGRES_PASSWORD=${NEXTCLOUD_DB_PASSWORD}
- POSTGRES_USER=${NEXTCLOUD_DB_USER}
- OVERWRITEPROTOCOL=https
- OVERWRITEHOST=${NEXTCLOUD_DOMAIN}
- REDIS_HOST=nextcloud-redis
- TRUSTED_PROXIES=traefik
labels:
- "traefik.enable=false"
volumes:
- nextcloud-data:/var/www/html
#- ./hooks/post-installation:/docker-entrypoint-hooks.d/post-installation
expose:
- 80
- 9000
networks:
- nextcloud
- traefik
- onlyoffice
- database
restart: unless-stopped
nextcloud-reverse-proxy:
container_name: nextcloud-reverse-proxy
image: nginx:1.27
depends_on:
- nextcloud
labels:
- "traefik.enable=true"
- "traefik.docker.network=traefik"
- "traefik.http.routers.nextcloud-reverse-proxy.rule=Host(`${NEXTCLOUD_DOMAIN}`)"
- "traefik.http.routers.nextcloud-reverse-proxy.entrypoints=web,websecure"
- "traefik.http.routers.nextcloud-reverse-proxy.middlewares=https-redirect"
- "traefik.http.routers.nextcloud-reverse-proxy.tls=true"
- "traefik.http.routers.nextcloud-reverse-proxy.tls.certresolver=le"
- "traefik.http.services.nextcloud-reverse-proxy.loadbalancer.server.port=80"
volumes:
- ./reverse-proxy/nginx.conf:/etc/nginx/nginx.conf
- nextcloud-data:/var/www/html
networks:
- nextcloud
- traefik
- onlyoffice
restart: unless-stopped
nextcloud-redis:
image: redis:alpine
container_name: nextcloud-redis
networks:
- nextcloud
restart: unless-stopped
volumes:
nextcloud-data:
name: nextcloud-data
networks:
database:
external: true
nextcloud:
name: nextcloud
external: true
traefik:
external: true
onlyoffice:
external: true