From b93aa55b319e6445b77ef06e7615e09bd23d4e0d Mon Sep 17 00:00:00 2001 From: Francesco Picone Date: Fri, 27 Mar 2026 15:51:37 +0100 Subject: [PATCH] ++ fix --- .env.example | 24 +++----------- docker-compose.yml | 82 +++------------------------------------------- 2 files changed, 10 insertions(+), 96 deletions(-) diff --git a/.env.example b/.env.example index e00090c..9c5bcf8 100644 --- a/.env.example +++ b/.env.example @@ -1,26 +1,12 @@ # ───────────────────────────────────────────── -# Configurazione Nextcloud + ONLYOFFICE + Cloudflare -# Rinomina in .env e compila tutti i valori +# Configurazione ONLYOFFICE standalone + Cloudflare +# Rinomina in .env e compila i valori # ───────────────────────────────────────────── -# ── Cloudflare Tunnel ────────────────────────── -# Token del tunnel (rigeneralo se già esposto pubblicamente) +# Token del tunnel Cloudflare (Zero Trust → Tunnels) +# ⚠️ Rigenera il token se già condiviso pubblicamente CLOUDFLARE_TOKEN=il_tuo_token_cloudflare -# ── Nextcloud ───────────────────────────────── -# Dominio pubblico configurato nel tunnel Cloudflare -NC_DOMAIN=cloud.tuodominio.com - -# Credenziali account amministratore Nextcloud -NC_ADMIN_USER=admin -NC_ADMIN_PASSWORD=cambia_questa_password - -# ── Database MariaDB ─────────────────────────── -DB_NAME=nextcloud -DB_USER=nextcloud -DB_PASSWORD=cambia_password_db -DB_ROOT_PASSWORD=cambia_password_root_db - -# ── ONLYOFFICE JWT ───────────────────────────── +# Chiave JWT per proteggere l'API di ONLYOFFICE # Genera con: openssl rand -hex 32 JWT_SECRET=cambia_con_stringa_casuale_sicura diff --git a/docker-compose.yml b/docker-compose.yml index decedf0..63a4dc5 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,76 +1,8 @@ services: # ───────────────────────────────────────────── - # Nextcloud — sync & share + editor web - # ───────────────────────────────────────────── - nextcloud: - image: nextcloud:28-apache - container_name: nextcloud - restart: unless-stopped - depends_on: - - nextcloud-db - - nextcloud-redis - environment: - NEXTCLOUD_ADMIN_USER: ${NC_ADMIN_USER} - NEXTCLOUD_ADMIN_PASSWORD: ${NC_ADMIN_PASSWORD} - NEXTCLOUD_TRUSTED_DOMAINS: ${NC_DOMAIN} - MYSQL_HOST: nextcloud-db - MYSQL_DATABASE: ${DB_NAME} - MYSQL_USER: ${DB_USER} - MYSQL_PASSWORD: ${DB_PASSWORD} - REDIS_HOST: nextcloud-redis - # Necessario per funzionare dietro Cloudflare Tunnel - OVERWRITEPROTOCOL: https - OVERWRITECLIURL: https://${NC_DOMAIN} - volumes: - - nextcloud_html:/var/www/html - - nextcloud_data:/var/www/html/data - expose: - - "80" - mem_limit: 512m - mem_reservation: 256m - cpus: "0.75" - networks: - - office_net - - # ───────────────────────────────────────────── - # MariaDB — database per Nextcloud (più leggero di PostgreSQL) - # ───────────────────────────────────────────── - nextcloud-db: - image: mariadb:11-ubi - container_name: nextcloud-db - restart: unless-stopped - environment: - MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD} - MYSQL_DATABASE: ${DB_NAME} - MYSQL_USER: ${DB_USER} - MYSQL_PASSWORD: ${DB_PASSWORD} - volumes: - - nextcloud_db:/var/lib/mysql - expose: - - "3306" - mem_limit: 256m - mem_reservation: 128m - cpus: "0.25" - networks: - - office_net - - # ───────────────────────────────────────────── - # Redis — cache per Nextcloud (velocizza molto) - # ───────────────────────────────────────────── - nextcloud-redis: - image: redis:7-alpine - container_name: nextcloud-redis - restart: unless-stopped - command: redis-server --save "" --appendonly no --maxmemory 64mb --maxmemory-policy allkeys-lru - mem_limit: 80m - mem_reservation: 32m - cpus: "0.10" - networks: - - office_net - - # ───────────────────────────────────────────── - # ONLYOFFICE Document Server + # ONLYOFFICE Docs — editor web standalone + # Accessibile direttamente dal browser via tunnel # ───────────────────────────────────────────── onlyoffice: image: onlyoffice/documentserver:latest @@ -80,6 +12,8 @@ services: JWT_ENABLED: "true" JWT_SECRET: ${JWT_SECRET} JWT_HEADER: Authorization + # Necessario per funzionare correttamente dietro proxy/tunnel + WOPI_ENABLED: "true" volumes: - onlyoffice_data:/var/www/onlyoffice/Data - onlyoffice_logs:/var/log/onlyoffice @@ -94,9 +28,7 @@ services: # ───────────────────────────────────────────── # Cloudflare Tunnel - # Espone SOLO Nextcloud (porta 80) verso l'esterno. - # ONLYOFFICE è raggiungibile internamente da Nextcloud - # tramite http://onlyoffice:80 + # Espone onlyoffice:80 verso il dominio configurato # ───────────────────────────────────────────── cloudflared: image: cloudflare/cloudflared:latest @@ -107,7 +39,6 @@ services: mem_reservation: 64m cpus: "0.25" depends_on: - - nextcloud - onlyoffice networks: - office_net @@ -116,9 +47,6 @@ services: # Volumi persistenti # ───────────────────────────────────────────── volumes: - nextcloud_html: - nextcloud_data: - nextcloud_db: onlyoffice_data: onlyoffice_logs: onlyoffice_lib: