- Notifications
You must be signed in to change notification settings - Fork 0
Kopier fra test til produktion
Vejledning til at overføre en OneDoor-installation fra test til produktion ved IIS.
Du har en fungerende test-installation med bl.a.:
- Installationsmappe (fx
C:\onedoor\sites\onedoor-test.minkommune.dk) - Config-mappe med organisations og configurations
- IIS-site der kører onedoor-server via iisnode
Anbefaling: Hold test og produktion som to adskilte installationer:
| Test | Produktion | |
|---|---|---|
| Mappe | C:\onedoor\sites\onedoor-test.minkommune.dk | C:\onedoor\sites\onedoor.minkommune.dk |
| Config | ...\config | ...\config |
| IIS-site | onedoor-test.minkommune.dk | onedoor.minkommune.dk |
C:\onedoor\sites\onedoor.minkommune.dk\ ├── config\ ├── log\ ├── node_modules\ (via pnpm add) ├── package.json └── web.config Installer OneDoor som beskrevet i README (pnpm add, kopier config). Brug en fast versionsnummer i package.json (fx "@septima/onedoor-server": "1.2.3").
Vigtigt: Kun config-mappen indeholder din tilpasning. node_modules kommer fra pnpm.
PowerShell:
# Erstat config helt (backup først!) Copy-Item -Path "C:\onedoor\sites\onedoor-test.minkommune.dk\config" ` -Destination "C:\onedoor\sites\onedoor.minkommune.dk\config" ` -Recurse -ForceManuelt: Kopiér hele mappen config fra test til produktion og overskriv.
Rediger i produktions-config efter kopi:
{ "servername": "Esbjerg Produktion", "publicEndpoint": "https://onedoor.minkommune.dk/", "logLevel": "warn" }-
auth– tokens, ldap, permissions (produktions-credentials) -
admin.db– evt. adskilt produktionsdatabase
-
datafordeler.usernameogpassword– brug produktions-credentials til Datafordeleren -
skraafoto.token– produktions-token -
poi.token– produktions-token - Andre API-tokens og adresser
Sæt korrekt CONFIG_PATH og logDirectory:
<appSettings> <add key="CONFIG_PATH" value="C:\onedoor\sites\onedoor.minkommune.dk\config" /> </appSettings>logDirectory="C:\onedoor\sites\onedoor.minkommune.dk\log"- IIS Manager → Sites → Add Website
- Site name: fx
onedoor-produktion - Binding:
onedoor.minkommune.dk(HTTPS anbefalet) - Physical path:
C:\onedoor\sites\onedoor.minkommune.dk - Application Pool: .NET CLR = "No Managed Code"; 32-bit = false
- Tjek at iisnode, URL Rewrite og ARR er installeret (som i README)
Når du har ændret config i test og vil overføre til produktion:
-
Backup produktions-config:
Copy-Item -Path "C:\onedoor\sites\onedoor.minkommune.dk\config" ` -Destination "C:\onedoor\backup\config-$(Get-Date -Format 'yyyyMMdd-HHmm')" -Recurse
-
Kopier kun de mapper/filer du har ændret – eller hele config hvis du overskriver credentials bagefter.
-
Opdater produktions-credentials i params.yml (datafordeler, skraafoto, poi osv.).
-
Genstart IIS-site eller Application Pool for produktion.
- CONFIG_PATH i web.config peger på produktions-config
- config.json: publicEndpoint, servername, logLevel
- params.yml: datafordeler, skraafoto, poi og andre tokens med produktionsværdier
- config/onedoor/config.yml: auth, evt. admin-database
- IIS-binding med HTTPS
- Backup af produktions-config taget
Et PowerShell-script kan:
- Backupe produktions-config
- Kopiere config fra test
- Erstatte kendte credentials via placeholder eller separat secrets-fil
For sikkerhed bør credentials ikke stå i scriptet – brug miljøvariabler eller en krypteret secrets-fil.
| Problem | Tjek |
|---|---|
| 500 efter deploy | iisnode-log i log-mappen, CONFIG_PATH korrekt |
| Forkerte data | params.yml med prod-credentials? |
| CORS-fejl | config.json allow_origins, publicEndpoint |
Se Installations vejledning for IIS-opsætning og iisnode.