100 lines
2.6 KiB
YAML
100 lines
2.6 KiB
YAML
# docker-compose.yml
|
|
services:
|
|
db:
|
|
image: mariadb:11.4
|
|
container_name: nextcloud-db
|
|
restart: unless-stopped
|
|
command: [
|
|
"mariadbd",
|
|
"--transaction-isolation=READ-COMMITTED",
|
|
"--binlog-format=ROW",
|
|
"--innodb_read_only_compressed=OFF"
|
|
]
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- MYSQL_DATABASE=${NEXTCLOUD_DB_NAME}
|
|
- MYSQL_USER=${NEXTCLOUD_DB_USER}
|
|
- MYSQL_PASSWORD=${NEXTCLOUD_DB_PASSWORD}
|
|
- MYSQL_ROOT_PASSWORD=${NEXTCLOUD_DB_ROOT_PASSWORD}
|
|
volumes:
|
|
- db_data:/var/lib/mysql
|
|
networks:
|
|
- nextcloud-net
|
|
|
|
app:
|
|
image: nextcloud:apache
|
|
container_name: nextcloud-app
|
|
restart: unless-stopped
|
|
command:
|
|
- /bin/sh
|
|
- -c
|
|
- |
|
|
mkdir -p /var/cache/fontconfig
|
|
chown -R www-data:www-data /var/cache/fontconfig
|
|
printf "ServerName nxt.bhatfamily.in\n" > /etc/apache2/conf-enabled/servername.conf
|
|
cat > /var/www/html/config/upgrade-disable-web.config.php <<'PHP'
|
|
<?php
|
|
$$CONFIG = array (
|
|
'upgrade.disable-web' => false,
|
|
);
|
|
PHP
|
|
chown www-data:www-data /var/www/html/config/upgrade-disable-web.config.php
|
|
chmod 640 /var/www/html/config/upgrade-disable-web.config.php
|
|
exec apache2-foreground
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- MYSQL_HOST=db
|
|
- MYSQL_DATABASE=${NEXTCLOUD_DB_NAME}
|
|
- MYSQL_USER=${NEXTCLOUD_DB_USER}
|
|
- MYSQL_PASSWORD=${NEXTCLOUD_DB_PASSWORD}
|
|
- REDIS_HOST=redis
|
|
- NEXTCLOUD_ADMIN_USER=${NEXTCLOUD_ADMIN_USER}
|
|
- NEXTCLOUD_ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD}
|
|
- NEXTCLOUD_TRUSTED_DOMAINS=nxt.bhatfamily.in
|
|
- NEXTCLOUD_OVERWRITEHOST=nxt.bhatfamily.in:8446
|
|
- NEXTCLOUD_OVERWRITEPROTOCOL=https
|
|
- NEXTCLOUD_UPDATE=1
|
|
- XDG_CACHE_HOME=/tmp/.cache
|
|
depends_on:
|
|
- db
|
|
- redis
|
|
volumes:
|
|
- nextcloud_data:/var/www/html
|
|
- /media/rbhat/DATA/nextcloud/NextCloudData:/var/www/html/data
|
|
networks:
|
|
- nextcloud-net
|
|
|
|
redis:
|
|
image: redis:7-alpine
|
|
container_name: nextcloud-redis
|
|
restart: unless-stopped
|
|
command: ["redis-server", "--save", "", "--appendonly", "no"]
|
|
networks:
|
|
- nextcloud-net
|
|
|
|
web:
|
|
image: nginx:1.25-alpine
|
|
container_name: nextcloud-web
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8082:80"
|
|
- "8446:443"
|
|
volumes:
|
|
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf:ro
|
|
- ./nginx/ssl:/etc/nginx/ssl:ro
|
|
- nextcloud_data:/var/www/html:ro
|
|
depends_on:
|
|
- app
|
|
networks:
|
|
- nextcloud-net
|
|
|
|
volumes:
|
|
db_data:
|
|
nextcloud_data:
|
|
|
|
networks:
|
|
nextcloud-net:
|
|
driver: bridge
|