83 lines
2.2 KiB
YAML
83 lines
2.2 KiB
YAML
services:
|
|
# --- DATENBANK ---
|
|
db:
|
|
image: mariadb:10.6
|
|
restart: always
|
|
command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
|
|
volumes:
|
|
- ./data_db:/var/lib/mysql
|
|
environment:
|
|
- MYSQL_ROOT_PASSWORD=${SQL_ROOT_PASSWORD}
|
|
- MYSQL_PASSWORD=${SQL_PASSWORD}
|
|
- MYSQL_DATABASE=${SQL_DATABASE}
|
|
- MYSQL_USER=${SQL_USER}
|
|
|
|
# --- CACHE & LOCKING ---
|
|
redis:
|
|
image: redis:alpine
|
|
restart: always
|
|
|
|
# --- NEXTCLOUD APP ---
|
|
app:
|
|
image: nextcloud
|
|
restart: always
|
|
ports:
|
|
- 8080:80
|
|
depends_on:
|
|
- db
|
|
- redis
|
|
volumes:
|
|
- ./data_nextcloud:/var/www/html
|
|
environment:
|
|
- MYSQL_PASSWORD=${SQL_PASSWORD}
|
|
- MYSQL_DATABASE=${SQL_DATABASE}
|
|
- MYSQL_USER=${SQL_USER}
|
|
- MYSQL_HOST=db
|
|
- REDIS_HOST=redis
|
|
- NEXTCLOUD_UPDATE=1
|
|
# Nutzt Variablen aus der .env
|
|
- NEXTCLOUD_TRUSTED_DOMAINS=localhost ${NEXTCLOUD_IP}
|
|
- TRUSTED_PROXIES=${TRUSTED_PROXIES_RANGE_1} ${TRUSTED_PROXIES_RANGE_2}
|
|
- OVERWRITEPROTOCOL=${OVERWRITEPROTOCOL}
|
|
- NC_serverid=${NC_SERVERID}
|
|
- NC_default_phone_region=${NC_DEFAULT_PHONE_REGION}
|
|
- PHP_MEMORY_LIMIT=512M
|
|
- PHP_UPLOAD_LIMIT=10G
|
|
- NEXTCLOUD_ADMIN_USER=${NEXTCLOUD_ADMIN_USER}
|
|
- NEXTCLOUD_ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD}
|
|
- NEXTCLOUD_DATA_DIR=/var/www/html/data
|
|
# E-Mail (SMTP) Konfiguration
|
|
- MAIL_FROM_ADDRESS=${MAIL_FROM_ADDRESS}
|
|
- MAIL_DOMAIN=${MAIL_DOMAIN}
|
|
- SMTP_HOST=${SMTP_HOST}
|
|
- SMTP_PORT=${SMTP_PORT}
|
|
- SMTP_NAME=${SMTP_NAME}
|
|
- SMTP_PASSWORD=${SMTP_PASSWORD}
|
|
- SMTP_SECURE=${SMTP_SECURE}
|
|
- SMTP_AUTHTYPE=${SMTP_AUTHTYPE}
|
|
|
|
# --- HINTERGRUND-AUFGABEN (CRON) ---
|
|
cron:
|
|
image: nextcloud
|
|
restart: always
|
|
volumes:
|
|
- ./data_nextcloud:/var/www/html
|
|
entrypoint: /cron.sh
|
|
depends_on:
|
|
- db
|
|
- redis
|
|
|
|
# --- NGINX PROXY MANAGER ---
|
|
nginx-proxy-manager:
|
|
image: 'jc21/nginx-proxy-manager:latest'
|
|
restart: always
|
|
ports:
|
|
- '80:80'
|
|
- '81:81'
|
|
- '443:443'
|
|
volumes:
|
|
- ./data_npm_data:/data
|
|
- ./data_npm_letsencrypt:/etc/letsencrypt
|
|
depends_on:
|
|
- app
|