Vai al contenuto

Impostazioni cookie

Scelga per ogni tipo quali cookie consente. Può modificare la sua scelta in qualsiasi momento tramite Impostazioni cookie in fondo a ogni pagina. Informativa sulla privacy

Necessari

Sempre attivi

Servono per accedere, conservare il carrello e ricordare le sue scelte. Sono sempre attivi.

Quali cookie?
  • weboke_sessie, weboke_klant, weboke_remember: la sua sessione e la permanenza dell'accesso
  • weboke_basket: il suo carrello
  • wkBtwIncl: visualizzazione dei prezzi con o senza IVA
  • wok_cookies: la sua scelta sui cookie, 12 mesi

Misurano quale annuncio porta a una visita o a un ordine, così non paghiamo annunci che non funzionano.

Quali cookie?
  • Google Ads tramite Google Tag Manager (_gcl_au, _gcl_aw), fino a 90 giorni
  • OpenAI Ads, annunci in ChatGPT
  • wok_aff: tramite quale partner è arrivato da noi (programma di affiliazione), 60 giorni

4,6

Paese e lingua

Ogni paese ha il suo sito, con i prezzi e l'IVA di quel paese.

Vedi

Backup con restic verso un'altra destinazione

Il backup giornaliero di WebOké (vedere Ripristinare i backup di WebOké) ripristina sempre l'intero VPS e si trova presso lo stesso fornitore. Con restic può creare inoltre un Suo backup personale: cifrato, in un'altra posizione e dal quale può ripristinare singoli file.

Che cosa Le serve?

  • Uno spazio esterno al Suo VPS accessibile tramite SFTP, ad esempio un servizio di archiviazione o un secondo server. Negli esempi si tratta di backup.example.net con l'utente backup.
  • Una password robusta per il backup. Se la perde, il Suo backup diventa inutilizzabile. La conservi anche al di fuori del server, nel Suo gestore di password.

Installazione e preparazione

Il backup viene eseguito come root, in modo da poter leggere tutto.

anna@web1:~$ sudo apt install restic
anna@web1:~$ sudo -i
root@web1:~# ssh-keygen -t ed25519 -C "restic web1" -N "" -f /root/.ssh/id_backup
root@web1:~# ssh-copy-id -i /root/.ssh/id_backup.pub backup@backup.example.net
root@web1:~# install -m 600 /dev/null /root/.restic-wachtwoord
root@web1:~# nano /root/.restic-wachtwoord

Indichi in /root/.ssh/config che root deve usare questa chiave per il server di backup:

Host backup.example.net
    User backup
    IdentityFile /root/.ssh/id_backup

Crei poi il repository (lo spazio in cui restic conserva tutto):

root@web1:~# export RESTIC_REPOSITORY=sftp:backup@backup.example.net:/restic/web1
root@web1:~# export RESTIC_PASSWORD_FILE=/root/.restic-wachtwoord
root@web1:~# restic init
created restic repository 3c9a1e5b2d at sftp:backup@backup.example.net:/restic/web1

Lo script di backup

Inserisca quanto segue in /usr/local/sbin/backup.sh e lo renda eseguibile con chmod 700 /usr/local/sbin/backup.sh:

#!/bin/sh
export RESTIC_REPOSITORY=sftp:backup@backup.example.net:/restic/web1
export RESTIC_PASSWORD_FILE=/root/.restic-wachtwoord

# 1. Databases dumpen (zie 8.2)
/usr/local/sbin/voor-backup.sh || exit 1

# 2. Apps met SQLite even stilzetten, back-up maken, weer starten
cd /srv/diensten
docker compose stop vaultwarden uptime-kuma n8n
restic backup /etc /home /root /srv /var/backups/db /var/lib/docker/volumes   --exclude /var/lib/docker/volumes/diensten_wp-db
RESULTAAT=$?
docker compose start vaultwarden uptime-kuma n8n
[ "$RESULTAAT" -eq 0 ] || exit 1

# 3. Oude back-ups opruimen
restic forget --keep-daily 7 --keep-weekly 4 --keep-monthly 6 --prune || exit 1

In stop e start indichi solo le app che utilizza effettivamente; il motivo per cui devono essere fermate brevemente è spiegato in Salvare correttamente database e volumi Docker. Lì trova anche il contenuto di voor-backup.sh. Le app vengono sempre riavviate, anche se il backup non riesce. Con forget e --prune conserva 7 backup giornalieri, 4 settimanali e 6 mensili; gli altri vengono eliminati.

Automaticamente ogni notte

Crei /etc/systemd/system/backup.service:

[Unit]
Description=restic back-up

[Service]
Type=oneshot
ExecStart=/usr/local/sbin/backup.sh

e /etc/systemd/system/backup.timer:

[Unit]
Description=restic back-up elke nacht

[Timer]
OnCalendar=*-*-* 03:15
Persistent=true

[Install]
WantedBy=timers.target
root@web1:~# systemctl daemon-reload
root@web1:~# systemctl enable --now backup.timer
root@web1:~# systemctl start backup.service
root@web1:~# journalctl -u backup.service -e

Controllo e ripristino

root@web1:~# restic snapshots
root@web1:~# restic check
root@web1:~# restic restore latest --target /tmp/terug --include /srv/diensten/vw-data

Ripristini in una cartella separata come /tmp/terug e poi copi ciò che Le serve. Si eserciti una volta ogni trimestre: un backup che non ha mai ripristinato è una speranza, non un backup.

Suggerimento: Si faccia avvisare se il backup non viene eseguito. Crei in Uptime Kuma un monitor di tipo Push (vedere Uptime Kuma: monitorare i Suoi siti e il Suo server) e aggiunga queste due righe in fondo a backup.sh. Se il segnale non arriva, riceverà una notifica.

sleep 30
curl -fsS -m 10 "https://status.example.com/api/push/JOUWCODE?status=up&msg=OK" >/dev/null

Un momento…

Configuri i suoi domini

Per ogni dominio imposti i nameserver, il collegamento al suo hosting e chi ne diventa l'intestatario.

Caricamento dei suoi domini…