Todos los manuales de operaciones
En construcción · El borrador requiere un manifiesto de lanzamiento

Manual de procedimientos técnicos

Instalación desde imágenes Docker y Docker Compose

Desde la recepción del paquete de lanzamiento, pasando por el primer lanzamiento, hasta la firma del registro de aceptación.

Audiencia
Implementador, administrador de Linux/Docker, administrador de bases de datos, administrador de identidades y redes.
Resultado
Los servicios se ejecutan a partir de imágenes definidas con precisión, se comunican únicamente en las direcciones permitidas y la instalación supera una prueba de humo repetible.

01

1. Adquisición e inspección

  1. Descargue el manifiesto de lanzamiento, el archivo Compose, la plantilla de configuración, la lista de verificación de secretos y el manual de procedimientos.
  2. Verifique las sumas de comprobación y los permisos del registro. No utilice la etiqueta más reciente.
  3. Descargue las imágenes mediante extracción controlada desde el entorno del cliente; la instalación no debería requerir acceso al servicio entrante solo para distribuir una nueva versión.
  4. Compare el motor Docker, el complemento Compose, el sistema operativo, la base de datos y la CPU compatibles con el entorno de destino. El uso de PostgreSQL, Oracle Database o Microsoft SQL Server debe confirmarse mediante las matrices específicas de la versión.
  5. Anote el nombre del responsable de la instalación, el horario de servicio, el punto de devolución y los contactos de nivel 1/2/3.

02

2. Topología de servicio

SIFYBOX no consta de un contenedor universal. Compose solo habilita los servicios necesarios para una solución específica.

  • OOD gestiona casos, formularios, estados y roles.
  • DOG crea documentos a partir de plantillas y datos.
  • FS aplica las normas financieras y, según el contrato de integración, verifica la fuente o mantiene una instantánea decisiva; la contabilidad permanece dentro del sistema económico.
  • ZST cede el rol seleccionado por un período limitado.
  • EPK gestiona las tareas de aprobación y firma; WSCS realiza técnicamente la firma según la configuración.
  • CUL almacena documentos, metadatos y versiones; CULWS proporciona servicios de integración.
  • Keycloak/IdP, eSSL, sistema económico, SMTP, Vault y monitorización pueden ser servicios externos para el cliente.

03

3. Archivo de configuración

Patrón de diseño objetivo, no un manual de lanzamiento validado. Los valores, la compatibilidad con _FILE, las comprobaciones de estado, las migraciones y los nombres de las variables deben ser confirmados por el manifiesto y el repositorio de la versión específica.

Ejemplo de trabajoSustituya los valores <…> por los de la versión
# /etc/sifybox/env/release.env — úplné image reference z manifestu
OOD_IMAGE=registry.ders.cz/<PROJECT>/<OOD_IMAGE>@sha256:<DIGEST>
POSTGRES_IMAGE=<SUPPORTED_POSTGRES_IMAGE>@sha256:<DIGEST>

# /etc/sifybox/env/site.env — nesekretní parametry instalace
COMPOSE_PROFILES=dog-local,fs-local,zst-local,epk-local,wscs-local,cul-local,culws-local
PUBLIC_BASE_URL=https://<FQDN>
DB_NAME=<DATABASE_NAME>
DB_USER=<DATABASE_USER>
OIDC_ISSUER=https://<KEYCLOAK_OR_IDP>/realms/<REALM>
OIDC_CLIENT_ID=<CLIENT_ID>
TZ=Europe/Prague

04

4. Compose como conjunto de servicios

El patrón de diseño objetivo explica el principio de referencias de imagen completas, redes internas y secretos. Los nombres, comprobaciones de estado, volúmenes y comandos reales se toman del repositorio de la versión específica.

Ejemplo de trabajoSustituya los valores <…> por los de la versión
# Cílový návrhový vzor — názvy parametrů, healthchecky a příkazy
# musí potvrdit manifest a runbook konkrétního release.
name: sifybox

services:
  ood:
    image: ${OOD_IMAGE:?OOD_IMAGE is required}
    env_file:
      - /etc/sifybox/env/site.env
    networks: [sifybox-backend]
    secrets: [db_password, oidc_client_secret]

  database:
    image: ${POSTGRES_IMAGE:?POSTGRES_IMAGE is required}
    networks: [sifybox-backend]
    environment:
      POSTGRES_DB: ${DB_NAME:?DB_NAME is required}
      POSTGRES_USER: ${DB_USER:?DB_USER is required}
      POSTGRES_PASSWORD_FILE: /run/secrets/db_password
    secrets: [db_password]
    volumes:
      - postgres_data:/var/lib/postgresql/data

networks:
  sifybox-backend:
    internal: true

volumes:
  postgres_data:

secrets:
  db_password:
    file: /etc/sifybox/secrets/db_password
  oidc_client_secret:
    file: /etc/sifybox/secrets/oidc_client_secret

05

5. Primera puesta en marcha

Ejemplo de trabajoSustituya los valores <…> por los de la versión
# Cílový návrhový vzor. Před použitím ověřte release runbook.
COMPOSE=(docker compose --env-file /etc/sifybox/env/release.env --env-file /etc/sifybox/env/site.env)

# 1. Kontrola výsledné konfigurace bez spuštění
"${COMPOSE[@]}" config --quiet

# 2. Stažení přesně určených images
"${COMPOSE[@]}" pull

# 3. Kontrola použitých digestů
"${COMPOSE[@]}" images --format json

# 4. Spuštění databáze a ověření jejího health stavu
"${COMPOSE[@]}" up -d database
"${COMPOSE[@]}" ps

# 5. Migrace – použijte pouze příkaz z release runbooku
"${COMPOSE[@]}" run --rm ood <MIGRATION_COMMAND_FROM_RELEASE>

# 6. Spuštění aplikačních služeb
"${COMPOSE[@]}" up -d

# 7. Kontrola stavu a posledních logů
"${COMPOSE[@]}" ps
"${COMPOSE[@]}" logs --since=10m --no-color

Nota: Nunca realices una migración basándote en conjeturas. Debe ser idempotente o contar con un procedimiento de retorno descrito con precisión en el manual de implementación.

06

6. Prueba de humo de aceptación

  1. Inicie sesión con el usuario de prueba a través del proveedor de identidad (IdP) de destino y verifique la asignación de roles.
  2. Cree un caso de prueba, adjunte un documento y realice una transición de flujo de trabajo.
  3. Genere un documento si DOG forma parte del conjunto.
  4. Verifique el envío y el estado exacto devuelto por el sistema económico o eSSL; no confunda la aceptación técnica con la publicación.
  5. Verifique la auditoría: identidad, hora, acción, estado original y resultante, e ID de correlación.
  6. Reinicie un servicio de la aplicación y verifique que el caso o documento no se haya perdido.
  7. Versiones y resúmenes de registros, resultados de pruebas, excepciones y aprobaciones de aceptación.