Guida per l'installazione e utilizzo di Borg su Windows con Docker

Questa guida descrive i passaggi necessari per configurare Borg Backup su un sistema Windows utilizzando Docker. Seguendo questi passaggi, sarà possibile creare e gestire backup remoti utilizzando Borg, con connessioni sicure tramite chiave SSH.

1. Creazione della chiave SSH con PuTTYgen

Per prima cosa, dobbiamo creare una chiave SSH per autenticare il client Borg con il server.

  1. Scarica e installa PuTTYgen sul tuo sistema Windows.
  2. Apri PuTTYgen e clicca su Generate per creare una nuova chiave SSH. Muovi il mouse per generare l'entropia necessaria.
  3. Una volta generata, salva la chiave privata come id_rsa e la chiave pubblica separatamente.
  4. Copia la chiave pubblica sul server remoto all'interno del file ~/.ssh/authorized_keys.

Nota: Assicurati di proteggere la chiave privata e non condividerla con nessuno.

2. Creazione dell'immagine Docker per Borg

Ora dobbiamo creare un'immagine Docker che includa la chiave SSH appena creata. Creiamo un Dockerfile con il seguente contenuto:

FROM pschiffe/borg
COPY ./id_rsa /root/ssh-key/id_rsa
RUN chmod 600 /root/ssh-key/id_rsa
    

Ecco i passaggi da seguire:

  1. Crea una cartella sul tuo computer e posiziona all'interno il file Dockerfile e il file id_rsa (la chiave privata SSH generata precedentemente).
  2. Apri un terminale o il prompt dei comandi di Windows e naviga nella cartella in cui hai salvato i file.
  3. Esegui il comando seguente per costruire l'immagine Docker:
docker build -t borg-backup .

3. Configurazione del repository Borg sul server

Prima di procedere con il backup, assicurati che il repository Borg sia configurato correttamente sul server. Utilizza il seguente schema di configurazione:

4. Esecuzione del backup

Ora possiamo eseguire il backup utilizzando il comando borg. Esegui il seguente comando Docker, sostituendo username con il tuo nome utente:

docker run --rm -v /percorso/dati:/mnt borg-backup borg create ssh://username@85.235.133.159:/home/vhosts/username/backup::'{now}' /mnt

Questo comando crea un backup della cartella montata da /percorso/dati e lo salva nel repository remoto.

5. Guida da completare

Questo è un punto di partenza per l'installazione e configurazione di Borg Backup su Windows utilizzando Docker. La guida è da completare con ulteriori dettagli, come la gestione del recupero dei backup, le policy di rotazione, e la configurazione automatizzata tramite script.