Podręcznik techniczny
Instalacja z obrazów Docker i Docker Compose
Od otrzymania pakietu premierowego, przez pierwsze uruchomienie, aż do podpisania protokołu odbioru.
01
1. Przejęcie i kontrola
- Pobierz manifest wydania, plik Compose, szablon konfiguracji, listę kontrolną sekretów i podręcznik.
- Sprawdź sumy kontrolne i uprawnienia rejestru. Nie używaj najnowszego tagu.
- Pobieraj obrazy za pomocą kontrolowanego pobierania ze środowiska klienta; instalacja nie powinna wymagać dostępu do usługi przychodzącej tylko po to, aby rozpowszechnić nową wersję.
- Porównaj obsługiwany silnik Dockera, wtyczkę Compose, system operacyjny, bazę danych i procesor ze środowiskiem docelowym. Użycie PostgreSQL, bazy danych Oracle lub Microsoft SQL Server musi zostać potwierdzone macierzami specyficznymi dla danej wersji.
- Zapisz właściciela instalacji, okno serwisowe, punkt powrotu i kontakty L1/L2/L3.
02
2. Topologia usług
SIFYBOX nie składa się z jednego uniwersalnego kontenera. Compose aktywuje tylko usługi potrzebne dla konkretnego rozwiązania.
- OOD zarządza sprawami, formularzami, statusem i rolami.
- DOG tworzy dokumenty na podstawie szablonów i danych.
- FS stosuje reguły finansowe i zgodnie z umową integracyjną weryfikuje źródła lub utrzymuje definitywny obraz; rachunkowość pozostaje w systemie ekonomicznym.
- ZST przekazuje wybraną rolę na ograniczony czas.
- EPK zarządza zadaniami zatwierdzania i podpisywania; WSCS technicznie wykonuje podpisywanie zgodnie z konfiguracją.
- CUL przechowuje dokumenty, metadane i wersje; CULWS zapewnia usługi integracyjne.
- Keycloak/IdP, eSSL, system ekonomiczny, SMTP, Vault i monitoring mogą być zewnętrznymi usługami klienta.
03
3. Plik konfiguracyjny
Docelowy wzorzec projektowy, a nie sprawdzony podręcznik wydania. Wartości, obsługa plików _FILE, kontrole stanu, migracje i nazwy zmiennych muszą zostać potwierdzone przez manifest i repozytorium konkretnego wydania.
# /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/Prague04
4. Compose jako zestaw usług
Wzorzec projektowy „docelowy” wyjaśnia zasadę pełnych odniesień do obrazów, sieci wewnętrznych i sekretów. Rzeczywiste nazwy, testy sprawności, woluminy i polecenia są pobierane z repozytorium konkretnej wersji.
# 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_secret05
5. Pierwsze uruchomienie
# 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-colorUwaga: Nigdy nie przeprowadzaj migracji na zasadzie domysłów. Musi być idempotentna lub mieć precyzyjnie opisaną procedurę powrotu w podręczniku wydania.
06
6. Test dymny akceptacyjny
- Zaloguj użytkownika testowego za pośrednictwem docelowego dostawcy tożsamości i sprawdź przypisania ról.
- Utwórz przypadek testowy, załącz dokument i wykonaj jedno przejście przepływu pracy.
- Wygeneruj dokument, jeśli DOG jest częścią zestawu.
- Sprawdź przesłanie i dokładny status zwrócony przez system ekonomiczny lub eSSL; nie myl akceptacji technicznej z wysłaniem.
- Zweryfikuj audyt: tożsamość, czas, działanie, stan oryginalny i wynikowy oraz identyfikator korelacji.
- Uruchom ponownie jedną usługę aplikacji i sprawdź, czy sprawa lub dokument nie został utracony.
- Rejestrowanie wersji i streszczeń, wyników testów, wyjątków i zatwierdzeń akceptacji.
Następna instrukcja
