Saltar al contenido
NeverWipedPrueba gratis14 días · sin tarjeta

Casos de uso · Lo que hace en tu servidor

Copias de un VPS con Docker

Copias de un servidor Docker: proyectos Compose, volúmenes con nombre, bases de datos en contenedores. Qué revisar y cómo restaurar un volumen o el servidor entero.

Tus aplicaciones se ejecutan en contenedores Docker, normalmente lanzados con Docker Compose, en un servidor Linux. Sus datos están en volúmenes con nombre, en carpetas del servidor montadas en los contenedores, y en contenedores de bases de datos. Esta página explica qué guarda NeverWiped en un servidor así, qué revisar antes de la primera copia, y cómo recuperar un volumen, una base de datos o el servidor entero.

Lo que encuentra el agente

  • Tus proyectos Compose. Una carpeta de /opt con un compose.yml o un docker-compose.yml se guarda como aplicación, con su archivo .env y las carpetas montadas desde ella (./data:/data). Los proyectos en /srv, /home o /root se guardan con esas carpetas (qué se guarda).
  • Bases de datos en contenedores. Un contenedor PostgreSQL, MySQL o MariaDB en marcha se exporta con docker exec: pg_dumpall con el usuario de POSTGRES_USER, o mysqldump con la contraseña root de las variables de las imágenes oficiales. Su volumen no se copia como archivos: la exportación lo sustituye.
  • Los demás volúmenes con nombre. Se leen mientras los contenedores siguen en marcha. Para las imágenes que escriben en el sitio un estado de tipo base de datos (Redis, Valkey, MongoDB, Elasticsearch, OpenSearch, InfluxDB, RabbitMQ, Vaultwarden y similares), la instalación propone una copia con sus contenedores en pausa durante una copia local (docker pause: congelados, no reiniciados). Ver un volumen Docker.
  • El resto del servidor: /etc, las tareas programadas, /root y /home.

No se guardan: las imágenes Docker y las capas de los contenedores (/var/lib/docker/overlay2 está excluido). Vuelven con docker compose pull o reconstruyendo desde el Dockerfile de tu carpeta de proyecto.

Revisa el plan antes de aceptarlo

  • Una carpeta montada desde otro sitio (/data, un segundo disco): añádela con --include /data. Las carpetas montadas desde dentro de la carpeta del proyecto ya están incluidas.
  • La carpeta de una base de datos montada desde la carpeta del proyecto (./pgdata:/var/lib/postgresql/data): la exportación ya cubre esa base, y una copia en marcha de sus archivos no es coherente. Déjala fuera con --exclude /opt/app/pgdata.
  • Un contenedor de base de datos parado no se exporta: los contenedores se encuentran con docker ps, que lista los que están en marcha. Arranca tus servicios antes de la instalación.
  • Un volumen tomado de la forma equivocada: cámbialo con --pause-volume <name> o --live-volume <name>.
  • Nada de Docker en la copia: --no-docker.

El plan se fija en la instalación. Cuando añadas después un contenedor, un volumen o un proyecto, vuelve a ejecutar neverwiped install --yes con las mismas opciones: detecta de nuevo y conserva el mismo servidor, el mismo repositorio y la misma clave de recuperación. neverwiped status muestra qué se guarda y cómo se toma cada volumen.

Recuperar

  • Un volumen. Restáuralo en una carpeta aparte, para los contenedores que lo usan, aparta su contenido actual, copia la copia de seguridad dentro y vuelve a arrancarlos (un volumen Docker).
  • Una base de datos en un contenedor. La exportación vuelve como postgresql-docker-<container>.sql o mysql-docker-<container>.sql, y se importa con docker exec -i (bases de datos en Docker). Una sola base: una base de datos.
  • El servidor entero. En el servidor nuevo, instala primero Docker, luego el agente, ejecuta neverwiped recover y restaura en una carpeta. Vuelve a copiar tus carpetas de proyecto, ejecuta docker compose up --no-start para crear los volúmenes, copia los volúmenes dentro, importa las exportaciones y arranca los servicios (un servidor entero).

Antes de un cambio arriesgado (una versión mayor de una imagen de base de datos, una migración), ejecuta neverwiped backup now.

Lo que no hace aquí

  • No hay imagen del servidor. El motor Docker, sus imágenes y los propios contenedores se reconstruyen, no se restauran.
  • Los volúmenes en vivo se leen mientras la aplicación funciona. Archivos escritos durante la copia pueden volver tal como estaban en momentos distintos. Pon el volumen en pausa si eso importa para la aplicación.
  • Una copia en pausa necesita espacio libre en disco para una copia del volumen, y equivale a lo que un corte de luz en ese instante dejaría en el disco (un volumen Docker).
  • Una base de datos vuelve tal como estaba en una copia, no en cualquier momento intermedio.
  • Root en el servidor, y una sola copia: ver los límites conocidos.

Empezar

En el servidor, como root:

curl -fsSL https://neverwiped.com/install.sh | sh

Después sigue los primeros pasos. Otros servidores: todos los casos de uso.

Última revisión: 6 de noviembre de 2026.