98 lines
2.3 KiB
YAML
98 lines
2.3 KiB
YAML
services:
|
|
nginx:
|
|
image: nginx:1.27-alpine
|
|
container_name: nextcloud-nginx
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- app
|
|
- collabora
|
|
ports:
|
|
- "${NGINX_PORT}:80"
|
|
volumes:
|
|
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf:ro
|
|
networks:
|
|
nextcloud_internal:
|
|
ipv4_address: 172.30.0.10
|
|
|
|
db:
|
|
image: mariadb:11.4
|
|
container_name: nextcloud-db
|
|
restart: unless-stopped
|
|
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
|
|
environment:
|
|
MYSQL_DATABASE: ${MYSQL_DATABASE}
|
|
MYSQL_USER: ${MYSQL_USER}
|
|
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
|
|
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
|
|
TZ: ${TZ}
|
|
volumes:
|
|
- db_data:/var/lib/mysql
|
|
networks:
|
|
- nextcloud_internal
|
|
|
|
redis:
|
|
image: redis:7-alpine
|
|
container_name: nextcloud-redis
|
|
restart: unless-stopped
|
|
command: redis-server --requirepass ${REDIS_PASSWORD}
|
|
networks:
|
|
- nextcloud_internal
|
|
|
|
app:
|
|
image: nextcloud:apache
|
|
container_name: nextcloud-app
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- db
|
|
- redis
|
|
expose:
|
|
- "80"
|
|
environment:
|
|
MYSQL_HOST: db
|
|
MYSQL_DATABASE: ${MYSQL_DATABASE}
|
|
MYSQL_USER: ${MYSQL_USER}
|
|
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
|
|
REDIS_HOST: redis
|
|
REDIS_HOST_PASSWORD: ${REDIS_PASSWORD}
|
|
NEXTCLOUD_TRUSTED_DOMAINS: ${NEXTCLOUD_DOMAIN}
|
|
TRUSTED_PROXIES: ${TRUSTED_PROXIES}
|
|
OVERWRITEHOST: ${NEXTCLOUD_DOMAIN}
|
|
OVERWRITEPROTOCOL: https
|
|
OVERWRITECLIURL: https://${NEXTCLOUD_DOMAIN}
|
|
PHP_MEMORY_LIMIT: 1024M
|
|
PHP_UPLOAD_LIMIT: 20G
|
|
TZ: ${TZ}
|
|
volumes:
|
|
- nextcloud_data:/var/www/html
|
|
networks:
|
|
- nextcloud_internal
|
|
|
|
collabora:
|
|
image: collabora/code:latest
|
|
container_name: collabora
|
|
restart: unless-stopped
|
|
expose:
|
|
- "9980"
|
|
environment:
|
|
domain: ${NEXTCLOUD_DOMAIN_REGEX}
|
|
username: ${COLLABORA_USERNAME}
|
|
password: ${COLLABORA_PASSWORD}
|
|
dictionaries: en_US it_IT
|
|
extra_params: --o:ssl.enable=false --o:ssl.termination=true --o:welcome.enable=false
|
|
TZ: ${TZ}
|
|
cap_add:
|
|
- MKNOD
|
|
networks:
|
|
- nextcloud_internal
|
|
|
|
volumes:
|
|
db_data:
|
|
nextcloud_data:
|
|
|
|
networks:
|
|
nextcloud_internal:
|
|
driver: bridge
|
|
ipam:
|
|
config:
|
|
- subnet: 172.30.0.0/24
|