Volume Backups (SQLite y volúmenes)
Para cuando tu app no usa una BD gestionada por Dokploy (Postgres/MySQL/Mongo/MariaDB) — por ejemplo SQLite, o cualquier estado en disco. Complementa Backups de BD.
Para qué sirve
Dokploy solo hace backup nativo de las BD que gestiona como servicio. Si tu app guarda estado en un archivo SQLite u otro dato en disco, esa función no aplica. Volume Backups respalda un volumen Docker con nombre completo a un bucket S3, sea cual sea el formato adentro.
Requisito crítico: named volumes, no bind mounts
Solo funciona con Docker named volumes. No funciona con bind mounts (carpetas tipo ../files montadas desde el host). Si tu proyecto usa bind mounts, migrarlo primero.
Configurar el mount:
- Aplicaciones:
Advanced → Mounts→ tipo Volume Mount. - Docker Compose: declarar el volumen con nombre en el YAML:
services:
app:
volumes:
- my-volume:/app/data
volumes:
my-volume:
Ejemplo real: N8N (SQLite)
N8N guarda todo su estado en SQLite dentro de un volumen (n8n_data) — caso típico donde el backup nativo no sirve:
services:
n8n:
image: docker.n8n.io/n8nio/n8n:1.83.2
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:
Crear el backup
Volume Backups → Create:
| Campo | Ejemplo | Nota |
|---|---|---|
| Name | my-n8n-backup | Identificador único |
| Schedule | 0 0 * * * | Diario a medianoche |
| Destination | destino S3 | Ver S3 |
| Service Name | n8n | Autocompleta |
| Volume Name | n8n_data | Se autocompleta al elegir el servicio |
| Turn off Container | recomendado: sí | Ver abajo |
Apagar el contenedor durante el backup:
- OFF (recomendado): lo detiene y lo levanta al terminar. Evita corrupción si la app escribe al volumen durante el snapshot.
- ON: más rápido, pero con riesgo de inconsistencia.
Restaurar
Volume Backups → Restore Volume: elegir el destino S3, el backup, e indicar el nombre del volumen destino.
Nomenclatura en Docker Compose: el patrón es {appName}_{volumeName}. Si la app es n8n-n8n-kqlble y el volumen n8n_data, el real es n8n-n8n-kqlble_n8n_data.
Antes de restaurar: el volumen destino no debe existir (si existe, falla). Detener cualquier contenedor que lo use y eliminarlo si hace falta.