1.1 Por qué realizar operaciones de mantenimiento
Esta aplicación está diseñada para ser resiliente y no requiere un mantenimiento frecuente. Sin embargo, en algunas situaciones, puede que necesite reiniciar la pila para aplicar una nueva versión o recuperarse de un estado de error.
Por ejemplo, si el procesamiento de datos falla, pueden acumularse archivos temporales en los volúmenes de Redis o RabbitMQ. Detener y reiniciar la aplicación elimina estos archivos y restablece la cola.
Nota: esta sección cubre únicamente el mantenimiento a nivel de Docker. La configuración de red o firewall específica de su organización queda fuera del alcance de este documento.
1.2 ¿Cuándo debería realizar el mantenimiento?
1.2.1 Los procesos de datos han fallado
La primera señal de que su aplicación necesita atención es cuando los procesos de datos lanzados desde Salesforce muestran un estado de Failed. Antes de actuar, revise la descripción del error para descartar problemas en sus reglas de deduplicación u otras integraciones.
Si el error apunta al propio servidor, continúe con la sección 1.3, Cómo proceder.
1.2.2 Procesos de datos pendientes
Si la cola de trabajos se queda bloqueada en el mismo mensaje e impide los procesos de datos, borre el volumen de RabbitMQ y reinicie la aplicación.
-
Paso 1 — Detenga la aplicación:
cd C:\dqe-unify docker compose stop rabbitmq -
Paso 2 — Borre el volumen de datos de RabbitMQ:
# Delete all files in the rabbitvol directory Remove-Item -Recurse -Force "C:\dqe-unify\volumes\rabbitvol\*" -
Paso 3 — Reinicie RabbitMQ:
docker compose start rabbitmq
Si el problema persiste, realice un reinicio completo como se describe en la sección 1.3.
1.3 Cómo proceder
1.3.1 Paso 1 – Obtener los registros
Los registros en una VM Windows son gestionados directamente por Docker. Utilice los siguientes comandos para obtenerlos.
Ver los registros en directo de todos los servicios:
cd C:\dqe-unify
docker compose logs -f
Ver los registros de un servicio específico:
docker compose logs -f unify-server
docker compose logs -f queue-worker
Exportar los registros a un archivo para su análisis:
docker compose logs --no-color unify-server C:\dqe-unify\logs\unify-server.log
docker compose logs --no-color queue-worker C:\dqe-unify\logs\queue-worker.log
Retención de registros: los registros de Docker se almacenan en el disco de la VM y no se rotan automáticamente. Para configurar la rotación de registros, edite la configuración del daemon de Docker (C:\ProgramData\Docker\config\daemon.json):
{
"log-driver": "json-file",
"log-opts": {
"max-size": "50m",
"max-file": "5"
}
}
1.3.2 Paso 2 – Reconstruir / Actualizar la aplicación
Para desplegar una versión más reciente de la imagen o borrar todos los volúmenes, detenga y elimine los contenedores, luego descargue las últimas imágenes y reinicie.
-
Paso 1 — Detenga y elimine todos los contenedores:
cd C:\dqe-unify docker compose down -
Paso 2 — Opcional: borre los volúmenes persistentes si es necesario:
Remove-Item -Recurse -Force "C:\dqe-unify\volumes\redisvol\*" Remove-Item -Recurse -Force "C:\dqe-unify\volumes\rabbitvol\*" -
Paso 3 — Descargue las últimas imágenes:
docker compose pull -
Paso 4 — Reinicie la aplicación:
docker compose up -d
1.3.3 Paso 3 – Reiniciar
Para un reinicio simple, sin borrar volúmenes ni descargar nuevas imágenes, ejecute:
cd C:\dqe-unify
docker compose restart
Supervise el reinicio:
docker compose ps
Todos los servicios deben alcanzar el estado running. Si un servicio muestra exited o permanece en un bucle de restarting, revise sus registros y contacte con el soporte de DQE Software si el problema no se puede resolver.
Importante: la política restart: always del archivo Compose garantiza que los contenedores se reinicien automáticamente tras un reinicio de la VM o del daemon de Docker. No se requiere intervención manual para los reinicios de VM habituales.
1.4 Garantizar el inicio automático al arrancar la VM
En Windows Server, Docker Engine se ejecuta como un servicio de Windows. Asegúrese de que esté configurado para iniciarse automáticamente, de modo que los contenedores se reinicien tras cualquier reinicio de la VM sin intervención manual.
Verifique el tipo de inicio del servicio en PowerShell como Administrador:
Get-Service docker | Select-Object Name, StartType, Status
Si StartType no es Automatic, configúrelo:
Set-Service -Name docker -StartupType Automatic
Start-Service docker
Dado que restart: always está configurado para cada servicio en docker-compose.yml, Docker Engine reiniciará automáticamente todos los contenedores cuando el servicio se inicie al arrancar. No se requiere configuración adicional.
1.5 Referencia de comandos útiles
| Acción | Comando (ejecutar desde C:\dqe-unify) |
|---|---|
| Iniciar todos los servicios | docker compose up -d |
| Detener todos los servicios | docker compose down |
| Reiniciar todos los servicios | docker compose restart |
| Ver el estado | docker compose ps |
| Ver todos los registros | docker compose logs -f |
| Ver los registros del servidor | docker compose logs -f unify-server |
| Ver los registros del worker | docker compose logs -f queue-worker |
| Descargar las últimas imágenes | docker compose pull |
| Reconstruir y redesplegar | docker compose down && docker compose pull && docker compose up -d |
| Conectarse a la shell de un contenedor | docker compose exec unify-server bash |
| Inspeccionar el uso de recursos de los contenedores | docker stats |
Relacionada con