Saltar al contenido principal

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:

CampoEjemploNota
Namemy-n8n-backupIdentificador único
Schedule0 0 * * *Diario a medianoche
Destinationdestino S3Ver S3
Service Namen8nAutocompleta
Volume Namen8n_dataSe autocompleta al elegir el servicio
Turn off Containerrecomendado: 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.


📖 docs.dokploy.com/docs/core/volume-backups