Arbeit an der Dokumentation: "Deployment" Teil ziemlich fertig.
Build and Publish Site / docker (push) Successful in 22s
Build and Publish Site / docker (push) Successful in 22s
This commit is contained in:
+55
-5
@@ -1,10 +1,60 @@
|
||||
# Deployment
|
||||
## Quellcode
|
||||
Der Quellcode ist auf Gitea unter https://gitea.psi.ch/data-catalog-services/ArchiveCostWebapp zu finden.
|
||||
Verwende git-Hilfsmittel, wenn du daran etwas ändern möchtest.
|
||||
|
||||
## Container Images
|
||||
## Container-Images
|
||||
Wie der/die Container-Images gebaut werden, wird im docker-compose.yml File beschrieben. Da es zwei Images braucht
|
||||
sind folgende Kommandos auszuführen:
|
||||
|
||||
```bash
|
||||
# Git Hash holen
|
||||
GIT_SHA=$(git rev-parse --short HEAD)
|
||||
|
||||
# Build mit ZWEI Tags (-t) ausführen
|
||||
docker buildx build --platform linux/amd64 \
|
||||
-t gitea.psi.ch/data-catalog-services/archivecostwebapp-logic:$GIT_SHA \
|
||||
-t gitea.psi.ch/data-catalog-services/archivecostwebapp-logic:latest \
|
||||
--push ./logic
|
||||
|
||||
docker buildx build --platform linux/amd64 \
|
||||
-t gitea.psi.ch/data-catalog-services/archivecostwebapp-analytics:$GIT_SHA \
|
||||
-t gitea.psi.ch/data-catalog-services/archivecostwebapp-analytics:latest \
|
||||
--push ./analytics
|
||||
```
|
||||
Auf gitea findet man die Images unter https://gitea.psi.ch/data-catalog-services -> Packages
|
||||
Jedes Image wird jeweils nur einmal in die Registry geladen.
|
||||
|
||||
Das folgende Diagramm verdeutlicht, wie Gitea mit mehreren Tags umgeht. Die eigentlichen Image-Daten werden nur
|
||||
einmal auf den Server übertragen:
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
Mac[💻 Dein Mac/PC]
|
||||
|
||||
subgraph Gitea [Gitea Container Registry]
|
||||
direction TB
|
||||
TagLatest[🏷️ Tag: latest]
|
||||
TagHash[🏷️ Tag: a1b2c3d]
|
||||
ImageData[📦 Image-Daten <br><i>Layer, Python-Code, Packages</i>]
|
||||
end
|
||||
|
||||
Mac -->|1. Lädt Daten einmalig hoch| ImageData
|
||||
TagLatest -->|2. Verweist auf| ImageData
|
||||
TagHash -->|3. Verweist auf| ImageData
|
||||
|
||||
style Gitea fill:#f9f9f9,stroke:#333,stroke-width:2px
|
||||
style ImageData fill:#e1f5fe,stroke:#0288d1,stroke-width:2px
|
||||
style TagLatest fill:#fff9c4,stroke:#fbc02d,stroke-width:1px
|
||||
style TagHash fill:#fff9c4,stroke:#fbc02d,stroke-width:1px
|
||||
```
|
||||
|
||||
## Dokumentation
|
||||
- Erstellen einer lokalen Dokumentation ist nicht notwendig. Benutze properdocs serve
|
||||
- Beim Deployen wird auf gitea der in .gitea/workflows/publish.yaml beschriebene Workflow getriggert.
|
||||
Dieser erstellt die statische Dokumentation (wie im properdocs.yml beschrieben) welche dann unter
|
||||
https://data-catalog-services.pages.psi.ch/ArchiveCostWebapp/ angeschaut werden kann.
|
||||
Es wird `properdocs` für die Erstellung der Dokumentation verwendet. Das Erzeugen einer lokalen
|
||||
Dokumentation (welche im Verzeichnis site/ landen würde) ist dabei nicht notwendig. Benutze
|
||||
`properdocs serve` um lokal, während des Schreibens der Dokumentation, die Änderungen anzuschauen.
|
||||
|
||||
Beim Deployen wird auf gitea der in .gitea/workflows/publish.yaml beschriebene Workflow getriggert.
|
||||
Dieser erstellt die statische Dokumentation (wie im properdocs.yml beschrieben) welche dann unter
|
||||
https://data-catalog-services.pages.psi.ch/ArchiveCostWebapp/ angeschaut werden kann.
|
||||
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
# Benutzung der Applikation
|
||||
Wie man auf die Applikation zugreift, ist einerseits in docker-compose.yml durch die Angabe
|
||||
von *build* und *ports*, sowie auf gitea selber (https://gitea.psi.ch/linux/WebHosting/src/branch/main/conf.d
|
||||
entsprechenden .conf File). Z.B. wird in archivecostwebapp.conf angegeben, wie die URL für den Zugriff aussieht.
|
||||
Die dort angegebenen URLs und Zertifikate werden vom Linuxteam besorgt.
|
||||
@@ -0,0 +1,2 @@
|
||||
# Fehlerbehandlung
|
||||
Tralala
|
||||
+3
-1
@@ -7,7 +7,9 @@ nav:
|
||||
- Architektur: 01_architecture.md
|
||||
- Implementation: 02_implementation.md
|
||||
- Deployment: 03_deployment.md
|
||||
- Code-Referenz: 04_api_reference.md
|
||||
- Benutzung: 04_benutzung.md
|
||||
- Fehlerbehandlung: 05_fehlerbehandlung.md
|
||||
- Code-Referenz: 06_api_reference.md
|
||||
|
||||
plugins:
|
||||
- search
|
||||
|
||||
Reference in New Issue
Block a user