Saltar al contenido principal

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:

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.

IMPORTANTE

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)​

  1. Vaya a "Stacks" en su servidor Portainer y haga clic en "Add stack".
  2. Nombre su stack (por ejemplo, "duplistatus").
  3. Elija "Build method" como "Web editor".
  4. 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
  1. 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.
  2. Haga clic en "Deploy the stack".

Opción 3: Usando Portainer Stacks (Repositorio GitHub)​

  1. En Portainer, vaya a "Stacks" y haga clic en "Add stack".
  2. Nombre su stack (por ejemplo, "duplistatus").
  3. Elija "Build method" como "Repository".
  4. Introduzca la URL del repositorio: https://github.com/wsj-br/duplistatus.git
  5. En el campo "Compose path", introduzca: production.yml
  6. (opcional) Establezca las variables de entorno TZ, LANG, PWD_ENFORCE y PWD_MIN_LEN en 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.
  7. 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_data se utiliza para almacenamiento persistente. La imagen del contenedor usa Europe/London como zona horaria predeterminada y en_GB como 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:

  1. Para sistemas con systemd-resolved (la mayoría de distribuciones Linux modernas):

    # Get DNS servers
    resolvectl status | grep "DNS Servers:" | awk '{print "--dns " $3}'

    # Get DNS search domains
    resolvectl status | grep "DNS Domain:" | awk '{print "--dns-search " $3}'
  2. 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​

  1. 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-urls como se describe en esa guía.
  2. Inicie sesión en duplistatus: consulte las instrucciones en la Guía de usuario.
  3. 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.
  4. Configure ajustes del servidor: configure alias y notas del servidor en Configuración → Servidor para hacer que su panel sea más informativo.
  5. Configure la configuración de NTFY: configure notificaciones a través de NTFY en Configuración → NTFY.
  6. Configure la configuración de correo electrónico: configure notificaciones por correo electrónico en Configuración → Correo electrónico.
  7. 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.