Configurazione Proxmox
In Proxmox sarà configurata una VM con Docker.
Per installare Docker in Debian 13:
apt update && apt install -y apt-transport-https ca-certificates curl gnupg lsb-release && curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg && echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null && apt update && apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin && usermod -aG docker $USER && newgrp docker
La VM ha due dischi virtuali, uno per il sistema operativo (/dev/vda) e l'altro per i DATI di nextcloud (/dev/vdb).
Il disco per i dati è stato in ext4:
mkfs.ext4 /dev/vdb
E montato nella cartella /nextcloud/DATI:
mrdir -p /nextcloud/DATI
echo "UUID=64c7d1b3-86a4-490c-ab72-a394ddeda3fa /nextcloud/DATI ext4 defaults 0 0" >> /etc/fstab
mount -a
systemctl daemon-reload
/nextcloud/docker-compose.yml:
services:
mariadb:
image: mariadb:11.8
restart: always
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
volumes:
- db_data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=16D05JICkyx%2!p%XXsIWR@UFvYX@W
- MYSQL_PASSWORD=YqpE5Jsv559wTuei&fuB9^EdV6l%Jy
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
nextcloud:
image: nextcloud:latest
restart: always
depends_on:
- mariadb
volumes:
- /nextcloud/DATI:/var/www/html/data # I tuoi file
- nextcloud_config:/var/www/html # La configurazione
environment:
- MYSQL_PASSWORD=YqpE5Jsv559wTuei&fuB9^EdV6l%Jy
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_HOST=mariadb
# IMPORTANTE: Permette a Nextcloud di fidarsi del proxy Caddy
# Se il container Caddy è nella stessa rete, l'IP è interno.
- TRUSTED_PROXIES=caddy
- OVERWRITEPROTOCOL=https
caddy:
image: caddy:latest
restart: always
ports:
- "80:80"
- "443:443"
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile
- caddy_data:/data
- caddy_config:/config
depends_on:
- nextcloud
volumes:
db_data:
nextcloud_config:
caddy_data:
caddy_config:
Caddyfile:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.eagleprojects.it {
reverse_proxy nextcloud:80
}