Files
nextcloud/docker-compose.yml

75 lines
1.7 KiB
YAML

services:
nextcloud-db:
image: postgres:16.11-alpine
container_name: nextcloud-db
command: ["postgres", "-c", "shared_buffers=512MB", "-c", "work_mem=16MB"]
restart: always
volumes:
- db:/var/lib/postgresql/data
env_file:
- db.env
networks:
- nextcloud
nextcloud-redis:
image: redis:8.4.0-alpine
container_name: nextcloud-redis
restart: always
networks:
- nextcloud
nextcloud-app:
image: nextcloud:32.0.5-fpm-alpine
container_name: nextcloud-app
depends_on:
- nextcloud-db
- nextcloud-redis
restart: always
volumes:
- nextcloud:/var/www/html
- ./app/config:/var/www/html/config
- ./app/custom_apps:/var/www/html/custom_apps
- ./app/data:/var/www/html/data
- ./app/themes:/var/www/html/themes
- ./zz-php-fpm-custom.conf:/usr/local/etc/php-fpm.d/zz-php-custom.conf
- ./opcache-recommended.ini:/usr/local/etc/php/conf.d/opcache-recommended.ini
env_file:
- app.env
networks:
- nextcloud
nextcloud-web:
image: caddy:2.10.2-alpine
container_name: nextcloud-web
restart: always
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile:ro
- nextcloud:/var/www/html:ro
- ./app/custom_apps:/var/www/html/custom_apps:ro
depends_on:
- nextcloud-app
networks:
- nextcloud
- reverse-proxy
nextcloud-cron:
image: nextcloud:32.0.5-fpm-alpine
container_name: nextcloud-cron
depends_on:
- nextcloud-app
restart: always
entrypoint: /cron.sh
volumes_from:
- nextcloud-app
networks:
- nextcloud
volumes:
nextcloud:
db:
networks:
nextcloud:
reverse-proxy:
external: true