Page History
Navitabs | ||||
---|---|---|---|---|
| ||||
Table of Contents |
---|
Introduktion
Vejledning Dette dokument giver vejledning til installation og konfiguration af NAP Platformen.
Formål
Formålet med dette dokumentet er, at man med dokumentet i hånden, kan installere NAP Platformen services (NAP) uden yderligere informationer.
Dokumentet rummer guides til installation af de enkelt delkomponenter af NAP platformen.
Sammenhæng med øvrige dokumenter
Dette dokument er en del af den samlede dokumentation for NAP Platformen.
Dokumentet er udformet, så det i videst muligt omfang opfylder sit formål uafhængigt af de øvrige dokumenter.
Ønskes mere information omkring guide til anvendelse findes dette på NAP Platform - Guide til anvendere.
Ønskes mere information omkring arkitektur og design findes dette på NAP Platform - Design og Arkitektur beskrivelse
Forudsætninger
...
Krav til udviklingssoftware:
Software | Version |
---|
Det lokale udviklingsmiljø er opsat med docker-compose.
...
Docker Engine | 18.02.0+ |
nap-test-web
Installation
Nap-test-web er en statisk service, som hostes i NSPs wildfly8 image.
Nap-test-web anvender Continuous Integration og Continuous Deployment miljøer til byg og leverance af komponenten.
Koden kan hentes på https://svn.nspop.dk/svn/components/nap/nap-test-web/.
Jenkins
Nap-test-web bygges på NSP's Jenkins server via følgende jobs:
NapTestWeb - build - bygger nap-test-web
NapTestWeb - push release candidate - pusher en release kandidat til NSP's docker registry
NapTestWeb - push snapshot - pusher en snapshot til NSP's docker registry
NapTestWeb - push release - pusher et release til NSP's docker registry
Docker
Nap-Test-Web kan findes på registry.nspop.dk/playground/nap/web/test:snapshot
Docker compose
Nap-test-web leveres som et sæt af Docker Compose filer i folderen https://svn.nspop.dk/src/components/nap/nap-test-web/trunk/compose/
For release x.y.z findes Docker Compose filerne i folderen https://svn.nspop.dk/src/components/nap/nap-test-web/tags/release-x.y.z/
En leverance af nap-reference består af en compose folder som beskrevet ovenfor samt tilhørende tags.
Folder | Indhold |
---|---|
development | Her ligger en Docker Compose fil til brug for udvikling. Se Guide til Udviklere. |
release | Her ligger den Docker Compose fil som det forventes driften anvender på både test og produktionsmiljøerne. |
test | Her ligger en Docker Compose fil der kan starte NAS2 i en standalone test konfiguration. |
Krav til adgang til andre services
Framing
Servicen benytter sig af nap-angular-sdk og nap-typescript-sdk og er udviklet til at være indlejret i et nap-java-host eller et andet host system, hvor den får alt sin kontekst.
Det meste funktionalitet er bundet op på denne kontekst og det skal derfor opsættes, for at få det fulde ud af nap-test-web.
For opsætning af dette, skal nap-java-host. Opsætning af denne er yderligere beskrevet i dette dokument.
Krav til applikationsservere
Nap-test-web er udviklet i Docker ved anvendelse af node:12-alpine.
Nap-test-web er bygget til imaget "registry.nspop.dk/platform/nsp:2.1.7".
Konfigurationen er således tilpasset deployering på WildFly 8.2 applikationsservere med OpenJDK 8.
Afvikling
Start
For at kunne køre de ovenstående compose filer kræves et docker netværk kaldet nap_net.
Hvis dette ikke allerede er lavet kør `docker network create nap_net`.
Kør `docker-compose up` fra compose/test mappen, for at starte en wildfly server i docker på nap_net netværket.
Herefter er containeren tilgængelig http://localhost:8080/testweb/ såfremt (https://svn.nspop.dk/src/components/nap/nap-compose/) kører på samme netværk som en reverse proxy.
Stop
Kør `docker-compose down`.
Nap-administration
Installation
Nap-admin anvender Continuous Integration og Continuous Deployment miljøer til byg og leverance af komponenten.
Nap-lobby-web og Nap-administration ligger som repositories på svn.nspop.dk. Disse skal hentes for anvende de foreslåede compose-setups.
Kør "docker-compose up" fra compose/development, for at starte en wildfly server i docker på nap_net netværket.
Jenkins
Nap-administration bygges på NSP's Jenkins server via følgende jobs.
NapLobbyWeb-build - bygger nap-lobby-web
NapAdmin-build - bygger nap-admin. I denne pibeline kan det vælges at bygge nap-lobby-web, hvis dette ønskes inkluderet.
NapAdmin- push snapshot - bygger nap-lobby-web og ligger bygget ind i roden af nap-admin samt pusher til NSP's docker registry.
NapAdmin - push release - laver et release af nap-admin og pusher til NSP's docker registry.
Docker
Nap admin kan findes på registry.nspop.dk/playground/nap/lobby
Docker-compose
Nap-administration leveres som et sæt af Docker Compose filer i folderen https://svn.nspop.dk/svn/components/nap/nap-administration/trunk/compose/
For release x.y.z findes Docker Compose filerne i folderen https://svn.nspop.dk/svn/components/nap/nap-administration/tags/release-x.y.z/
En leverance af Nap-administration består af en compose folder som beskrevet ovenfor samt tilhørende tags.
Compose folderen indeholder 5 underfoldere:
Folder | Indhold |
---|---|
configuration | Her ligger alle de konfigurationsfiler som det forventes af driften tilretter til det anvendte miljø. Se Driftvejledningen |
database | Database scripts |
development | Her ligger en Docker Compose fil til brug for udvikling. Se Guide til Udviklere. |
test | Her ligger en Docker Compose fil der kan starte NAS2 i en standalone test konfiguration. |
release | Her ligger den Docker Compose fil som det forventes driften anvender på både test og produktionsmiljøerne. |
Konfiguration
Alt konfiguration foregår ved at loade filer fra wildfly modulet dk.sds.nsp.nap.admin.facade.
De følgende konfigurationsfiler skal således volume mappes ind i modulet "dk/sds/nsp/nap/admin/main/" på applikationsserveren (/pack/wildfly8/modules/ i docker).
Konfigurationsfiler | |
---|---|
Filnavn | Beskrivelse |
nap-lobby-ds.xml | Datasource beskrivelse. |
log4j-napadmin.xml | log4j konfiguration |
nap-admin.properties | Applikationskonfiguration |
oiosaml | Konfiguration af OIOSAML |
Disse filer bliver loadet ind på classpath når applikationen deployes.
Ved konfigurationsændringer skal wildfly serveren genstartes.
i NAP Platform - Driftsvejledning er hver enkel fil gennemgået i detaljer.
Afvikling
Start
For at kunne køre de ovenstående compose filer kræves et docker netværk kaldet nap_net.
Hvis dette ikke allerede er lavet kør
...
`docker network create nap_
...
net`.
Kør `docker-compose up` fra compose/test mappen, for at starte en wildfly server i docker på nap_net netværket.
Herefter er containeren tilgængelig http://localhost:8080/admin/ såfremt (https://svn.nspop.dk/src/components/nap/nap-compose/) kører på samme netværk som en reverse proxy.
Stop
Kør `docker-compose down`.
Krav til adgang til andre services
Nap-admin benytter sig af en database. En mariadb instans der er tilknyttet i compose-filerne. Det er et krav, at denne er opsat og tilgængelig på den url, der er defineret i nap-lobby-ds.xml.
Adgang til denne service er garanteret ved at afvikle compose filerne beskrevet ovenfor.
Framing
Servicen benytter sig af nap-angular-sdk og nap-typescript-sdk og er udviklet til at være indlejret i et nap-java-host eller et andet host system, hvor den får alt sin kontekst.
Det meste funktionalitet er bundet op på denne kontekst og det skal derfor opsættes, for at få det fulde ud af
nap-admin-web
nap-lobby-web.
nap-test-web
For opsætning af dette, skal nap-java-host og nap-administration køres parallelt, og opsætning af det er yderligere beskrevet i dette dokument.
3. Krav til applikationsservere
Nap-admin er udviklet i Docker ved anvendelse af imaget "registry.nspop.dk/platform/nsp:1".
Nap-lobby-web er udviklet i Docker ved anvendelse af node:12-alpine.
Den samlede deployment unit, nap-admin, er bygget til og testet i Docker med imaget "registry.nspop.dk/platform/nsp:1"
Konfigurationen er således tilpasset deployering på WildFly 8.2 applikationsservere med OpenJDK 8.
nap-host-java
...
nap-host-java er lavet som executable, og kan hentes på nedenstående links.
Alternativt kan kilde koden bygges med java 13 og køres med `java -jar`
Forbindelse til nap-administration og nap-Lobby
Servicen benytter sig af nap-administration og nap-lobby-web enten lokalt eller på test1.