Sari la conținut

Deployment

Acest conținut nu este încă disponibil în limba selectată.

Live:

Rulează pe caseta AWS partajată gStack (edge nginx + rețea gstack-web + Keycloak comun).

Push în registry-ul GitLab (registry.esempla.systems/govtech/gstack/saas_gnotify):

  • :backend-<ver> — jar Spring Boot (Dockerfile.backend, temurin-21). Deployat curent: backend-2.12.0.
  • :frontend-<ver> — build Angular → nginx (Dockerfile.frontend), proxy /api,/management → gnotify-backend:8090.
  • :registry-<ver> — al doilea SPA (Registrul Destinatarilor, registry-ui/, Angular 20) → portalgnotify.….

docker-compose-server.yml rulează backend + frontend + postgres + rabbitmq pe rețeaua internal + externă gstack-web. Secretele dintr-un .env alăturat (parolă Postgres, JWT_SECRET, credențiale SES, chei VAPID, config MNotify).

Terminal window
# backend
docker run --rm --user "$(id -u):$(id -g)" -e HOME=/tmp -v "$PWD":/app -w /app \
-v <m2-cache>:/m2 maven:3.9-eclipse-temurin-21 \
mvn -ntp -Dmaven.repo.local=/m2 -Pprod -DskipTests package
# frontend: ng build --configuration production
GrupCheiVezi
Registrul DestinatarilorGNOTIFY_RECIPIENTS_ENABLEDRegistrul-Destinatarilor
MNotifyGNOTIFY_MNOTIFY_{ENABLED,MODE,URL,KEYSTORE_*}MNotify-Forwarding
Email (SES)spring.mail.*, gnotify.mail.senders.*Channels-and-Providers
Web PushGNOTIFY_PUSH_VAPID_{PUBLIC,PRIVATE}_KEY, _SUBJECTChannels-and-Providers
Livrareconcurență tier priority/important (DeliveryProperties)Notification-Pipeline
OIDCgnotify.oidc.enabled, realm gnotify, client gnotify-webSecurity-and-Auth
mTLSgnotify.pfx.auth-disabled (dev)Security-and-Auth
  • Keycloak realm gnotify + client gnotify-web înainte de a activa OIDC.
  • RabbitMQ pornit (cozile notify.{canal}.{tier} + .dlq se declară la boot).
  • Certificatul MNotify certs/2026_e-integritate.pfx copt în jar (gitignored) dacă se merge pe mode=default.
Terminal window
curl -s https://gnotify.gstack.esempla.systems/management/health # {"status":"UP"}
curl -s -X POST https://gnotify.gstack.esempla.systems/api/authenticate \
-H 'Content-Type: application/json' -d '{"username":"admin","password":"admin"}'