Guía de instalación
La aplicación se puede implementar usando Docker, Portainer Stacks o Podman. Después de la instalación, es posible que desee configurar la ZONA HORARIA, como se describe en Configurar zona horaria y debe configurar los servidores Duplicati para enviar registros de copia de seguridad a duplistatus, como se indica en la sección Configuración de Duplicati.
Requisitos Previos
Asegúrese de tener lo siguiente instalado:
- Docker Engine - Guía de instalación para Debian
- Docker Compose - Guía de instalación para Linux
- Portainer (opcional) - Guía de instalación para Docker
- Podman (opcional) - Guía de instalación
Autenticación
duplistatus desde la versión 0.9.x requiere autenticación de usuario. Se crea automáticamente una cuenta admin predeterminada cuando se instala la aplicación por primera vez o se actualiza desde una versión anterior:
- nombre de usuario:
admin - contraseña:
Duplistatus09
Puede crear cuentas de usuario adicionales en Configuración > Usuarios después del primer inicio de sesión.
Los administradores también pueden requerir opcionalmente claves de API para Duplicati y Homepage, y restringir el acceso con listas de permitidos IP. Ambos están desactivados por defecto.
El sistema aplica una longitud mínima y complejidad de contraseña. Estos requisitos se pueden ajustar utilizando las variables de entorno PWD_ENFORCE y PWD_MIN_LEN. Usar una contraseña sin suficiente complejidad o con una longitud corta puede comprometer la seguridad. Por favor, utilice estas configuraciones con cuidado.
Imágenes de contenedor
Puede usar las imágenes de:
- Docker Hub:
docker.io/wsjbr/duplistatus:latest - GitHub Container Registry:
ghcr.io/wsj-br/duplistatus:latest
Opción 1: Usando Docker Compose
Este es el método recomendado para implementaciones locales o cuando desea personalizar la configuración. Utiliza un archivo docker compose para definir y ejecutar el contenedor con todos sus ajustes.
# download the compose file
wget https://github.com/wsj-br/duplistatus/raw/refs/heads/master/production.yml -O duplistatus.yml
# start the container
docker compose -f duplistatus.yml up -d
Consulte la sección Zona horaria para obtener más detalles sobre cómo ajustar la zona horaria y el formato de número/fecha/hora.
Opción 2: Usando Portainer Stacks (Docker Compose)
- Vaya a "Stacks" en su servidor Portainer y haga clic en "Add stack".
- Nombre su stack (por ejemplo, "duplistatus").
- Elija "Build method" como "Web editor".
- Copie y pegue esto en el editor web:
# duplistatus production compose.yml
services:
duplistatus:
image: ghcr.io/wsj-br/duplistatus:latest
container_name: duplistatus
restart: unless-stopped
environment:
- TZ=Europe/London
- PWD_ENFORCE=true
- PWD_MIN_LEN=8
ports:
- "9666:9666"
volumes:
- duplistatus_data:/app/data
networks:
- duplistatus_network
networks:
duplistatus_network:
driver: bridge
volumes:
duplistatus_data:
name: duplistatus_data
- Consulte la sección Zona horaria para obtener más detalles sobre cómo ajustar la zona horaria y el formato de número/fecha/hora.
- Haga clic en "Deploy the stack".
Opción 3: Usando Portainer Stacks (Repositorio GitHub)
- En Portainer, vaya a "Stacks" y haga clic en "Add stack".
- Nombre su stack (por ejemplo, "duplistatus").
- Elija "Build method" como "Repository".
- Introduzca la URL del repositorio:
https://github.com/wsj-br/duplistatus.git - En el campo "Compose path", introduzca:
production.yml - (opcional) Establezca las variables de entorno
TZ,LANG,PWD_ENFORCEyPWD_MIN_LENen la sección "Variables de entorno". Compruebe la sección Zona horaria para obtener más detalles sobre cómo ajustar la zona horaria y el formato de número/fecha/hora. - Haga clic en "Desplegar la pila".
Opción 4: Usando Docker CLI
# Create the volume
docker volume create duplistatus_data
# Start the container
docker run -d \
--name duplistatus \
-p 9666:9666 \
-e TZ=Europe/London \
-e LANG=en_GB \
-v duplistatus_data:/app/data \
ghcr.io/wsj-br/duplistatus:latest
- El volumen
duplistatus_datase utiliza para almacenamiento persistente. La imagen del contenedor usaEurope/Londoncomo zona horaria predeterminada yen_GBcomo configuración regional predeterminada (idioma).
Opción 5: Usando Podman (CLI) rootless
Para configuraciones básicas, puede iniciar el contenedor sin configuración de DNS:
mkdir -p ~/duplistatus_data
# Start the container (standalone)
podman run -d \
--name duplistatus \
--userns=keep-id \
-e TZ=Europe/London \
-e LANG=en_GB \
-p 9666:9666 \
-v ~/duplistatus_data:/app/data \
ghcr.io/wsj-br/duplistatus:latest
Configuración de DNS para contenedores Podman
Si necesita una configuración DNS personalizada (por ejemplo, para Tailscale MagicDNS, redes corporativas o configuraciones DNS personalizadas), puede configurar manualmente los servidores DNS y dominios de búsqueda.
Búsqueda de su configuración DNS:
-
Para sistemas con systemd-resolved (la mayoría de distribuciones Linux modernas):
# Get DNS serversresolvectl status | grep "DNS Servers:" | awk '{print "--dns " $3}'# Get DNS search domainsresolvectl status | grep "DNS Domain:" | awk '{print "--dns-search " $3}' -
Para sistemas sin systemd o como alternativa:
cat /run/systemd/resolve/resolv.conf 2>/dev/null || cat /etc/resolv.conf
Busque líneas que comiencen con nameserver (para servidores DNS) y search (para dominios de búsqueda). Si no está seguro de su configuración DNS o dominios de búsqueda de red, consulte con su administrador de red para obtener esta información.
Ejemplo con configuración de DNS:
mkdir -p ~/duplistatus_data
# Start the container with DNS configuration
podman run -d \
--name duplistatus \
--userns=keep-id \
--dns 100.100.100.100 \
--dns-search example.com \
-e TZ=Europe/London \
-e LANG=en_GB \
-p 9666:9666 \
-v ~/duplistatus_data:/app/data \
ghcr.io/wsj-br/duplistatus:latest
Puede especificar múltiples servidores DNS añadiendo múltiples banderas --dns:
--dns 8.8.8.8 --dns 1.1.1.1
Puede especificar múltiples dominios de búsqueda añadiendo múltiples banderas --dns-search:
--dns-search example.com --dns-search internal.local
Nota: Omita las direcciones IPv6 (que contienen :) y las direcciones locales (como 127.0.0.53) al configurar servidores DNS.
Compruebe la sección Zona horaria para obtener más detalles sobre cómo ajustar la zona horaria y el formato de número/fecha/hora.
Opción 6: Usando Pods Podman
Los pods Podman le permiten ejecutar múltiples contenedores en un espacio de nombres de red compartido. Esto es útil para pruebas o cuando necesita ejecutar duplistatus junto con otros contenedores.
Configuración básica de pod:
mkdir -p ~/duplistatus_data
# Create the pod
podman pod create --name duplistatus-pod --publish 9666:9666/tcp
# Create the container in the pod
podman create --name duplistatus \
--pod duplistatus-pod \
--user root \
-e TZ=Europe/London \
-e LANG=en_GB \
-v ~/duplistatus_data:/app/data \
ghcr.io/wsj-br/duplistatus:latest
# Start the pod
podman pod start duplistatus-pod
Configuración de DNS para Pods Podman
Al usar pods, la configuración de DNS debe establecerse a nivel de pod, no a nivel de contenedor. Utilice los mismos métodos descritos en la Opción 5 para encontrar sus servidores DNS y dominios de búsqueda.
Ejemplo con configuración de DNS:
mkdir -p ~/duplistatus_data
# Create the pod with DNS configuration
podman pod create --name duplistatus-pod \
--publish 9666:9666/tcp \
--dns 100.100.100.100 \
--dns-search example.com
# Create the container in the pod
podman create --name duplistatus \
--pod duplistatus-pod \
--user root \
-e TZ=Europe/London \
-e LANG=en_GB \
-v ~/duplistatus_data:/app/data \
ghcr.io/wsj-br/duplistatus:latest
# Start the pod
podman pod start duplistatus-pod
Gestión del pod:
# Stop the pod (stops all containers in the pod)
podman pod stop duplistatus-pod
# Start the pod
podman pod start duplistatus-pod
# Remove the pod and all containers
podman pod rm -f duplistatus-pod
Configuración esencial
- Configure sus servidores Duplicati para enviar mensajes de registro de copia de seguridad a duplistatus (obligatorio). En Duplicati 2.0.9.106 y versiones posteriores, utilice
--send-http-json-urlscomo se describe en esa guía. - Inicie sesión en duplistatus: consulte las instrucciones en la Guía de usuario.
- Recopile registros iniciales de copia de seguridad: utilice la función Recopilar registros de copias de seguridad para poblar la base de datos con datos históricos de copia de seguridad de todos sus servidores Duplicati. Esto también actualiza automáticamente los intervalos de monitoreo de copias de seguridad según la configuración de cada servidor.
- Configure ajustes del servidor: configure alias y notas del servidor en Configuración → Servidor para hacer que su panel sea más informativo.
- Configure la configuración de NTFY: configure notificaciones a través de NTFY en Configuración → NTFY.
- Configure la configuración de correo electrónico: configure notificaciones por correo electrónico en Configuración → Correo electrónico.
- Configure notificaciones de copia de seguridad: configure notificaciones por copia de seguridad o por servidor en Configuración → Notificaciones de Copia de Seguridad.
Consulte las siguientes secciones para configurar la configuración opcional, como la zona horaria, el formato de número y la configuración de seguridad.