nextcloud-docker-compose/docker-compose.yaml

68 lines
1.7 KiB
YAML

secrets:
postgres_db:
file: ./secrets/postgres_db.txt
postgres_user:
file: ./secrets/postgres_user.txt
postgres_password:
file: ./secrets/postgres_password.txt
nextcloud_admin_user:
file: ./secrets/nextcloud_admin_user.txt
nextcloud_admin_password:
file: ./secrets/nextcloud_admin_password.txt
networks:
frontend:
external: ${DOCKER_PROXY_EXT-true}
name: ${DOCKER_PROXY_NETWORK}
backend:
services:
redis:
image: redis:alpine
restart: unless-stopped
networks:
- backend
nextcloud:
build:
context: nextcloud
args:
NEXTCLOUD_TAG: ${NEXTCLOUD_TAG}
restart: unless-stopped
mem_reservation: ${NEXTCLOUD_MEM_RES:-512m}
mem_limit: ${NEXTCLOUD_MEM_LIMIT:-4g}
volumes:
- ${VOLUME_PATH}/var/www/html:/var/www/html:rw
secrets:
- postgres_db
- postgres_user
- postgres_password
- nextcloud_admin_user
- nextcloud_admin_password
networks:
- frontend
- backend
environment:
POSTGRES_PASSWORD_FILE: /run/secrets/postgres_password
POSTGRES_DB_FILE: /run/secrets/postgres_db
POSTGRES_USER_FILE: /run/secrets/postgres_user
POSTGRES_HOST: ${POSTGRES_HOST}
NEXTCLOUD_ADMIN_PASSWORD_FILE: /run/secrets/nextcloud_admin_password
NEXTCLOUD_ADMIN_USER_FILE: /run/secrets/nextcloud_admin_user
REDIS_HOST: redis
NEXTCLOUD_TRUSTED_DOMAINS: ${NEXTCLOUD_DOMAIN}
OVERWRITEPROTOCOL: https
depends_on:
- redis
cron:
image: nextcloud:${NEXTCLOUD_TAG}
restart: unless-stopped
volumes:
- ${VOLUME_PATH}/var/www/html:/var/www/html
networks:
- backend
entrypoint: /cron.sh
depends_on:
- redis