docs: establish project documentation baseline
This commit is contained in:
52
docs/decisions/005-production-deployment-direction.md
Normal file
52
docs/decisions/005-production-deployment-direction.md
Normal file
@ -0,0 +1,52 @@
|
||||
# 005 – Riktning för produktionsdeployment
|
||||
|
||||
## Status
|
||||
|
||||
Accepterat som planerad riktning, ännu inte implementerat
|
||||
|
||||
## Sammanhang
|
||||
|
||||
HemHub använder i nuläget H2 för lokal utveckling och tester. Repositoryt saknar
|
||||
fortfarande container-, pipeline- och produktionskonfiguration, men den
|
||||
övergripande målbilden för byggande och drift behöver vara dokumenterad innan
|
||||
den implementeras.
|
||||
|
||||
Källkoden ligger i Gitea och den planerade produktionsmiljön är Ubuntu-servern
|
||||
Biff.
|
||||
|
||||
## Beslut
|
||||
|
||||
- PostgreSQL ska användas som produktionsdatabas.
|
||||
- Frontend och backend ska paketeras som Docker-images.
|
||||
- Drone ska bygga och publicera images till ett privat registry.
|
||||
- Watchtower ska uppdatera tjänsterna när nya images publiceras.
|
||||
- Nginx kan användas som reverse proxy.
|
||||
|
||||
Detta ADR fastställer komponenterna och ansvarsfördelningen på övergripande
|
||||
nivå. Det inför inte någon konfiguration och innebär inte att lösningen redan
|
||||
har driftverifierats.
|
||||
|
||||
## Konsekvenser
|
||||
|
||||
- Kommande produktionsarbete behöver införa och verifiera PostgreSQL-stöd,
|
||||
Dockerpaketering och en Drone-baserad leveranskedja.
|
||||
- Images behöver kunna publiceras till ett privat registry som Biff kan nå.
|
||||
- Uppdateringsflödet behöver utformas så att Watchtower kan hämta och starta nya
|
||||
images på ett kontrollerat sätt.
|
||||
- Nginx är ett möjligt reverse proxy-lager, inte en fastställd detaljkonfiguration.
|
||||
- Lokal utveckling och automatiska tester fortsätter använda H2 tills ett
|
||||
separat beslut eller en feature ändrar detta.
|
||||
|
||||
## Öppna detaljer
|
||||
|
||||
Följande beslutas först när produktionslösningen implementeras:
|
||||
|
||||
- exakt containerstruktur;
|
||||
- image-namn och taggningsstrategi;
|
||||
- produktions-URL;
|
||||
- secrets och hur de tillförs till pipeline och tjänster;
|
||||
- exakt Nginx-konfiguration;
|
||||
- exakt Drone-, registry-, Watchtower- och deploymentkonfiguration.
|
||||
|
||||
IP-adresser, credentials och andra miljöspecifika känsliga värden ska inte
|
||||
dokumenteras här.
|
||||
Reference in New Issue
Block a user